Setter (programmering)

En setter ( engelsk  setter , også setting method , modifying method , mutator ) er en metode, der bruges i objektorienteret programmering til at tildele en værdi til et indkapslet felt , for eksempel ved at behandle ugyldige tildelinger . Ofte implementeret i tandem med en getter -metode , der giver dig mulighed for at få værdien af ​​et klassefelt.

Eksempler

Java eksempel:

offentlig klasse ScheduleTask { private int timer ; public void setHours ( int hours ) { if (( hours >= 0 ) && ( hours < 24 )) this . timer = timer ; } }

Her, for at ændre det skjulte felt hours, skal du bruge en sætter setHours, der sikrer, at den kun tager gyldige værdier.

I C#  bruges en anden teknik oftere på grund af syntaktiske funktioner (kontekstnøgleord setog - bruges kun i sætteren):value

public class ScheduleTask { private int hours ; public int Timer { sæt { if ( ( værdi >= 0 ) && ( værdi < 24 ) ) { timer = værdi ; } } } }

I dette tilfælde er det også muligt at bruge det gennem en offentlig metode, da set { ... }C#-kompileren faktisk konverterer konstruktionen til en klassemetode.

Sætteren i VB.NET skal have WriteOnly-modifikatoren, hvis getteren ikke er implementeret:

Public Class Foo Private m_Data As Integer 'Privat datafelt Public Property Message As Integer 'Auto-implementeret egenskab siden VB 10.0 Public WriteOnly Property Data As Integer 'Offentlig skrive-kun egenskabssæt ( Value As Integer ) m_Data = Value End Set End Property End Class