Setter: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 5: Zeile 5:
 
'''Setter''' werden verwendet, um die Kontrolle über übergebene Werte zu besitzen.  
 
'''Setter''' werden verwendet, um die Kontrolle über übergebene Werte zu besitzen.  
  
Ein [[Integer|'''int''']] kann z.B. auch negative Werte annehmen. Diese Eigenschaft kann allerdings problematisch sein. Soll mit der Variablen zum Beispiel eine ''Länge'' repräsentiert werden, so dürfen ihr keine negativen Werte zugewiesen werden können. Daher werden dieses und ähnliche Attribute als [[privat]] deklariert und es wird eine '''setter'''-[[Methode]] geschrieben, die es erlaubt fehlerhafte Eingaben vor Setzen des Attributs abzufangen und entweder Fehlermeldungen auszugeben oder das [[Programm]] vorzeitig zu beenden.
+
Ein [[Integer|'''int''']] kann z.B. auch negative Werte annehmen. Diese Eigenschaft kann allerdings problematisch sein. Soll mit der Variablen zum Beispiel eine ''Länge'' repräsentiert werden, so dürfen ihr keine negativen Werte zugewiesen werden können. Daher werden dieses und ähnliche Attribute als [[privat]] deklariert und es wird eine '''setter'''-[[Methode]] geschrieben, die es erlaubt, fehlerhafte Eingaben vor Setzen des Attributs abzufangen und entweder Fehlermeldungen auszugeben oder das [[Programm]] vorzeitig zu beenden.
  
== Beispiele ==
+
== Beispiel ==
 +
 
 +
Am einfachsten ist die Verwendung eines '''Setters''' an der Quaderklasse zu zeigen. Hier sollen die Attribute für Höhe, Breite und Länge nicht negativ gesetzt werden können. Entsprechend wird jedes Attribut als privat deklariert und der '''Setter''' wird so programmiert, dass er negative Werte nicht übernimmt und eine Fehlermeldung ausgibt.
  
 
<source lang="java">
 
<source lang="java">

Aktuelle Version vom 18. Januar 2017, 16:45 Uhr

Setter sind in der objektorientierten Programmierung häufig verwendete Methoden, die ein Attribut setzen oder eine andere Eigenschaft eines Objektes verändern. Ihr Pendant sind die getter-Methoden.

Verwendung

Setter werden verwendet, um die Kontrolle über übergebene Werte zu besitzen.

Ein int kann z.B. auch negative Werte annehmen. Diese Eigenschaft kann allerdings problematisch sein. Soll mit der Variablen zum Beispiel eine Länge repräsentiert werden, so dürfen ihr keine negativen Werte zugewiesen werden können. Daher werden dieses und ähnliche Attribute als privat deklariert und es wird eine setter-Methode geschrieben, die es erlaubt, fehlerhafte Eingaben vor Setzen des Attributs abzufangen und entweder Fehlermeldungen auszugeben oder das Programm vorzeitig zu beenden.

Beispiel

Am einfachsten ist die Verwendung eines Setters an der Quaderklasse zu zeigen. Hier sollen die Attribute für Höhe, Breite und Länge nicht negativ gesetzt werden können. Entsprechend wird jedes Attribut als privat deklariert und der Setter wird so programmiert, dass er negative Werte nicht übernimmt und eine Fehlermeldung ausgibt.

public class Cuboid{

    private double length;

    /*
     * ...
     */

    public void setLength(double length){
        if(length <= 0){
            System.out.println("Error! The length of a cube can not be equal or smaller than zero!");
            return;
        }
        this.length = length;
    }