Stellen Sie sich eine Klasse als ein Konzept der Dinge in der realen Welt vor und stellen Sie sich Instanziierung als Materialisierung dieses Bildes vor. Und ich denke, dass die Einkapselung ein Mittel ist, um die Existenz der Substanz zu bestätigen. Insbesondere lautet der Code wie folgt.
//Klasse des menschlichen Konzepts
public class Human {
//Menschen haben drei Eigenschaften: Alter, Geschlecht und Macht
private int age = 0;
private String gender = new String();
private double power = 0.0;
//Die obigen drei Attribute müssen für die Materialisierung von Menschen festgelegt werden.
//Es sind nicht Menschen, die diese Eigenschaften nicht haben.
public Human(int age, String gender, double power) {
this.age = age;
this.gender = gender;
this.power = power;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public double getPower() {
return power;
}
public void setPower(double power) {
this.power = power;
}
}
Wenn Sie diese Klasse instanziieren, wird eine Person geboren.
Die Existenz eines Setzers ermöglicht es, einen Teil der geborenen Person zu verändern.
Hier stellt sich die Frage.
Die Existenz von Menschen sollte den Wert des Attributs in Bezug auf ein Ereignis ändern. Aber warum ist es möglich, einen Attributwert zu ändern? Es fühlt sich an wie eine prozedurale Sprache.
Wenn sich beispielsweise das Alter ändert, kann dies auch die Leistung beeinflussen. In diesem Fall sollten Sie eine Methode wie upAge ()
vorbereiten.
Nehmen wir außerdem an, dass Sie dem Attribut den Stoff des Stoffobjekts hinzugefügt haben, vorausgesetzt, Sie sind als Mensch verkleidet. Wenn Sie sich dann anziehen, passieren Sie das "Stoffobjekt" als Setter. Dies wird jedoch nicht als objektorientiert angesehen. Kleidung sollte nur zu "Mensch" gehören. Die Kleidung selbst ist kein Element des Objekts. In solchen Fällen sollten Sie die Klasse erben und eine "moderne menschliche Klasse" erstellen.
In vielen Fällen ist der Setter ein nicht übereinstimmender Schreibstil für die Objektorientierung.
Zumindest denke ich, dass es besser ist, nicht in die Superklasse einzutreten.
Der Setter hat jedoch auch Bedeutung. Es ist eine erforderliche Schreibmethode in JavaBeans. Dank dessen ist es möglich, beim Aufrufen des Anforderungselements mit dem EL-Ausdruck usw. in der JSP-Datei mit hoher Lesbarkeit zu schreiben. Darüber hinaus ist es eine empfohlene Schreibmethode, auch für APIs, die ich nicht kenne.
Wir haben auch gehört, dass es beim Übergang von der C-Sprache benötigt wurde.
Dies ist meine Meinung für ein halbes Jahr nach dem Studium von Java. Ich denke nicht, dass dies immer richtig ist, aber ich persönlich halte es für sinnvoll. Ich wäre dankbar, wenn mich jemand korrigieren könnte. das ist alles.
Recommended Posts