Heim >Java >javaLernprogramm >Beispielanalyse von Java-Klassen und -Objekten
2. Ähnlichkeiten und Unterschiede zwischen Java-Klassen und C-Sprachstrukturen
Wir können feststellen, dass Klassen in Java tatsächlich Strukturen in C-Sprache sehr ähnlich sind. Was sind also die Unterschiede zwischen ihnen?
Die Struktur der C-Sprache ist die Verpackung von Daten. Zusammenfassen einer Reihe konzeptionell zusammengehöriger Daten, um die Gesamtverarbeitung zu erleichtern. Die Außenwelt kann diese Daten nach Belieben lesen und schreiben. Java-Objekte können Datenpakete oder Verantwortlichkeiten sein. Die Speicherorte sind unterschiedlich. C-Sprachstrukturen können auf dem Stapel gespeichert werden oder auf dem Heap vorhanden sein. Java-Objekte kann nur auf dem Heap existieren
3. Klassen und Instanziierung von Klassen
Mitglieder einer Klasse können Folgendes umfassen: Felder, Methoden, Codeblöcke, interne Klassen und Schnittstellen usw.
kann anschaulich als eine Klasse verstanden werden Eine Vorlage, und die Instanziierung einer Klasse besteht darin, Objekte über diese Vorlage zu erstellen (eine Vorlage kann unzählige Objekte erstellen). Das Deklarieren einer Klasse entspricht tatsächlich dem Anpassen eines neuen Typs, eines Referenztyps. Deklaration einer Klasse
Grundlegend Form:
Klasse Klassenname {Feld (Mitgliedsvariable/Eigenschaft);
Methode (Mitgliedsmethode);public class Dog { public String name; public int age; public void bark() { System.out.println("汪汪"); } }Durch den obigen Code wird eine Hundeklasse mit zwei Attributen erstellt: Name und Alter, und das Verhalten wird aufgerufen
Die Öffentlichkeit vor der Eigenschaft ist ein Objekt, das ohne Hinzufügen von Statik
Member-Methode instanziiert wird. Mitglieder folgen den Standardwertregeln
vor dem Zugriffsmodifikator
Standardwertregeln: Verformung von 0
Spezial:
Referenztyp : null
boolean: false
char: 'u0000' (Nullzeichen)
Instantiierung der Klasse
class Dog { public String name; public int age; public boolean are; public static int a; public void bark() { System.out.println("汪汪"); } } public class Practice { public static void main(String[] args) { Dog dog = new Dog(); // 实例化一个对象 System.out.println(dog.are); // 通过.来访问 } }
Hier wird ein Objekt durch new instanziiert und die Referenz des Objekts wird verwendet Variablen werden verwendet, um auf Mitgliedsvariablen zuzugreifen, und auf gewöhnliche Methoden wird über die Referenz des Objekts zugegriffen. Methodennamen zum Aufrufen von statischen Eigenschaften (statische Mitgliedsvariablen) werden innerhalb der Klasse definiert und fügen statische Änderungen hinzu
Der folgende Code:class Dog { public String name; public int age; public boolean are; public static int a; // 静态属性 public void bark() { System.out.println("汪汪"); } }
System.out.println(Dog.a);Sie benötigen kein Objekt, um auf die Statik zuzugreifen Eigenschaften der Klasse, Sie können direkt darauf zugreifen Sie können weder auf die Werte nicht statischer Datenelemente innerhalb einer statischen Methode zugreifen, noch können Sie nicht statische Methoden aufrufen. Statische Methoden hängen nicht von Objekten ab. Vier Konstruktionsmethoden. Zuerst denken wir darüber nach it, wie entsteht ein Objekt? Reservieren Sie Speicher für das Objekt. Rufen Sie den entsprechenden Konstruktor auf Der Methodenname muss mit dem Klassennamen identisch sein. Keine Rückgabewerttypdeklaration Code:
System.out.println(Dog.a);In diesem Code gibt es die Dog-Klasse, die zwei Konstruktoren hat, einen ohne Parameter und einen mit Parametern. Beim Erstellen eines Objekts durch new wird die parametrisierte Konstruktion verwendet und Sie können das gedruckte Ergebnis sehen
Es ist also tatsächlich ersichtlich, dass der aufgerufene Konstruktor von den in new übergebenen Parametern abhängt.
Hinweis:
Wenn die Klasse keinen Konstruktor enthält, füllt das System automatisch eine Konstruktormethode ohne Parameter aus, aber Wenn Sie den Konstruktor selbst schreiben, können Sie den Parameterlosen Konstruktor nicht ersetzen. Wenn Sie den Parameterlosen Konstruktor verwenden müssen, müssen Sie ihn manuell schreiben. Der Konstruktor unterstützt auch das Überladen. Dies ist die Rolle davon
In vielen Fällen könnte jemand fälschlicherweise denken, dass dies das aktuelle Objekt ist, aber tatsächlich handelt es sich um einen Verweis auf das aktuelle Objekt
Warum dies kein Objekt, sondern eine Referenz ist:
Wir müssen wissen, dass der Konstruktor zum Erstellen eines Objekts verwendet wird. Während des Aufrufs des Konstruktors zum Erstellen eines Objekts existiert das Objekt also immer noch nicht Woher kommt die Idee eines Objekts?
So können wir über diese auf Eigenschaften, Mitgliedsmethoden und Konstruktoren zugreifen (wenn der Konstruktor aufgerufen wird, kann er nur in der ersten Zeile platziert werden und kann nur im Konstruktor geschrieben werden). nur einmal verwendbar)Das obige ist der detaillierte Inhalt vonBeispielanalyse von Java-Klassen und -Objekten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!