Heim  >  Artikel  >  Java  >  Java objektorientiert – Kapselung

Java objektorientiert – Kapselung

王林
王林nach vorne
2019-11-28 14:12:502179Durchsuche

Java objektorientiert – Kapselung

Übersicht

Objektorientierte Programmiersprache ist eine Simulation der objektiven Welt. In der objektiven Welt sind Mitgliedsvariablen im Objekt verborgen . Es kann nicht direkt manipuliert oder geändert werden. Die Kapselung kann als Schutzbarriere betrachtet werden, die verhindert, dass andere Klassen frei auf den Code und die Daten der Klasse zugreifen können. Um auf die Daten dieser Klasse zuzugreifen, müssen Sie die Methode angeben.

Eine ordnungsgemäße Kapselung kann das Verständnis und die Wartung des Codes erleichtern und außerdem die Sicherheit des Codes erhöhen.

Prinzip

Attribute ausblenden Wenn Sie auf ein Attribut zugreifen müssen, stellen Sie öffentliche Methoden bereit, um darauf zuzugreifen.

Kapselungsschritte

Verwenden Sie das private Schlüsselwort, um Mitgliedsvariablen zu ändern.

Für Mitgliedsvariablen, auf die zugegriffen werden muss, stellen Sie ein entsprechendes Paar getXxx-Methoden und setXxx-Methoden bereit.

Empfehlung für Java-Lernvideos: Java-Online-Tutorial

Gekapselte Operation – privates Schlüsselwort

Die Bedeutung von privat:

Private ist ein Berechtigungsmodifikator, der die Mindestberechtigung darstellt. Er kann Mitgliedsvariablen und Mitgliedsmethoden ändern, auf die nur in dieser Klasse zugegriffen werden kann.

Verwendungsformat von privat

private 数据类型 变量名 ;

Verwenden Sie privat, um Mitgliedsvariablen zu ändern. Der Code lautet wie folgt:

Java objektorientiert – Kapselung

Stellen Sie die getXxx-Methode / setXxx-Methode bereit, Sie können auf Mitgliedsvariablen zugreifen. Der Code lautet wie folgt:

Java objektorientiert – Kapselung

Kapselungsoptimierung 1 - dieses Schlüsselwort

Wir haben festgestellt, dass der Name des formalen Parameters in der setXxx-Methode nicht den Anforderungen entspricht, die Bedeutung durch das Sehen des Namens zu erkennen. Wenn die Änderung also mit dem Namen der Mitgliedsvariablen übereinstimmt, Wird es unter dem Namen bekannt sein? Der Code lautet wie folgt:

Java objektorientiert – Kapselung

Nach der Änderung und dem Test haben wir ein neues Problem festgestellt: Die Zuweisung der Mitgliedsvariablen ist fehlgeschlagen. Mit anderen Worten: Nach dem Ändern des formalen Parametervariablennamens von setXxx () weist die Methode der Mitgliedsvariablen keinen Wert zu! Dies liegt daran, dass der Name der formalen Parametervariablen denselben Namen hat wie der Name der Mitgliedsvariablen, wodurch der Name der Mitgliedsvariablen ausgeblendet wird. Der Variablenname in der Methode kann nicht auf die Mitgliedsvariable zugreifen, sodass die Zuweisung fehlschlägt. Daher können wir nur das Schlüsselwort this verwenden, um dieses Problem mit doppelten Namen zu lösen.

Die Bedeutung davon

Dies stellt die Referenz (Adresswert) des aktuellen Objekts der Klasse dar, dh die Referenz des Objekts selbst.

Denken Sie daran: Auf welches Objekt die Methode aufgerufen wird, dies in der Methode repräsentiert dieses Objekt. Das heißt, wer auch immer anruft, dies repräsentiert.

dieses Format:

this.成员变量名;
rrree

Tipp: Wenn in der Methode nur ein Variablenname vorhanden ist, wird dieser standardmäßig ebenfalls geändert und kann geändert werden weggelassen.

Kapselungsoptimierung 2 – Konstruktor

Wenn ein Objekt erstellt wird, wird der Konstruktor verwendet, um das Objekt zu initialisieren und den Mitgliedsvariablen Anfangswerte zuzuweisen des Objektwertes.

Tipp: Unabhängig davon, ob Sie den Konstruktor anpassen oder nicht, verfügen alle Klassen über Konstruktoren, da Java automatisch einen Konstruktor ohne Parameter bereitstellt scheitern.

Format der Definition der Konstruktormethode:

Java objektorientiert – Kapselung

In der Schreibweise der Konstruktormethode wird der Methodenname angegeben und sein Standort. Die Klassennamen sind gleich. Es hat keinen Rückgabewert, daher ist kein Rückgabetyp erforderlich, nicht einmal void. Nach Verwendung der Konstruktormethode lautet der Code wie folgt:

Java objektorientiert – Kapselung

Hinweis:

Wenn Sie keine Konstruktormethode angeben, Das System gibt keine Parameterkonstruktionsmethode an.

Wenn Sie einen Konstruktor bereitstellen, stellt das System keinen parameterlosen Konstruktor mehr bereit.

Konstruktormethoden können überladen sein und Parameter können definiert werden oder nicht.

标准代码——JavaBean

JavaBean 是 Java语言编写类的一种标准规范。符合 JavaBean 的类,要求类必须是具体的和公共的,并且具有无 参数的构造方法,提供用来操作成员变量的 set 和 get 方法。

Java objektorientiert – Kapselung

编写符合 JavaBean 规范的类,以学生类为例,标准代码如下:

Java objektorientiert – Kapselung

测试类,代码如下:

public class TestStudent {
	public static void main(String[] args) {
		//无参构造使用
		Student s= new Student();  
		s.setName(" 柳 岩 "); 
		s.setAge(18);
		System.out.println(s.getName()+"‐‐‐"+s.getAge());
		//带参构造使用
		Student s2= new Student(" 赵 丽 颖 ",18);  
		System.out.println(s2.getName()+"‐‐‐"+s2.getAge());
	}
}

推荐相关文章教程:java语言入门

Das obige ist der detaillierte Inhalt vonJava objektorientiert – Kapselung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen