[Java] Objektorientiert

Referenz "Einführung in Java, die klar verstanden werden kann p263-p366"

Kapitel 7 Zusammenfassung

Erstens als Grund, die Objektorientierung zu lernen Dies soll verhindern, dass der Quellcode zu lang und kompliziert wird, als dass die Entwickler ihn selbst verstehen könnten.

Erstens unterscheiden sich objektorientierte und grundlegende Grammatik völlig darin, was sie lernen und wie sie lernen. Daher verwenden es viele Menschen, ohne die Essenz zu verstehen.

・ Objektorientierte Definition Das Konzept der Komponentisierung bei der Entwicklung von Software

・ Das Wesen der Objektorientierung Reproduzieren Sie die Charaktere in der realen Welt und ihr Verhalten in der virtuellen Welt im Computer

Bei der objektorientierten Programmierung setzt der Programmierer jedes Teil auf Schreiben Sie "Aufgaben (Rollen)" als Programm. Diese Verantwortung ist "Informationsspeicherung" und "Betrieb". Um diese zu erfüllen, haben Objekte "Attribute" und "Operationen".

"Attribut" Ein Feld, in dem Informationen zum Charakter gespeichert werden "Operation" Die Prozedur der Aktionen und Aktionen, die vom Charakter ausgeführt werden

Objekte arbeiten zusammen, indem sie Attribute lesen und schreiben und Operationen miteinander aufrufen. Es funktioniert als ein Programm als Ganzes.

・ Drei wichtige objektorientierte Funktionen Verkapselung Erbe Polymorphismus

Kapitel 8 Zusammenfassung

Die Rolle des Programmierers bei der Objektorientierung (1) Berücksichtigen Sie die Verantwortlichkeiten, die jedes Objekt tragen sollte, und definieren Sie die Arten und Inhalte von "Attributen" und "Operationen". ② Erstellen und verschieben Sie jedes Objekt in der virtuellen Welt.

Das Wort Instanz wird verwendet, wenn wir eine Entität angeben möchten, die in einer virtuellen Welt arbeitet. Das Erstellen einer Instanz aus einer Klasse repräsentiert auch die Instanziierung.

Wenn Sie eine Zeichenklasse erstellen, benötigen Sie eine Klasse, die Ihnen erklärt, wie es funktioniert. Das ist die Hauptklasse.

public class main {
	public static void main(String[] args) {
	}
}

Im Folgenden werde ich in diesem Buch auf den Code verweisen, der am Beispiel "Kampf zwischen Held und Spukpilz" geschrieben wurde. (Verwenden Sie Heldenklasse, Matango-Klasse, Hauptklasse)

Heldenklasse ・ So deklarieren Sie eine Klasse

public class Hero {
}

・ So deklarieren Sie Attribute

[Name] name(Zeichenfolgentyp)
[HP]   hp(int type)

・ So deklarieren Sie eine Operation Objektorientiert verwendet Methoden zum Definieren von Operationen

	void sleep() {
		this.hp = 100;
		System.out.println(this.name + "Geschlafen und erholt!");
	}

Zusammenfassend sieht es so aus

public class Hero {
	String name;
	int hp;

	void sleep() {
		this.hp = 100;
		System.out.println(this.name + "Geschlafen und erholt!");
	}

}

Wenn Sie eine Klasse definieren, können Sie sie als Typ verwenden. Der Grund, warum wir eine Klassentypvariable benötigen, besteht darin, eine bestimmte Instanz mit demselben Namen zu identifizieren.

Hauptklasse -Wie erstelle ich eine Instanz?

Klassenname Variablenname=neuer Klassenname();
Variablennamen.Feldname=Wert;

Ich habe es tatsächlich bewegt

Heldenklasse

Hero.png

Hauptklasse

main.png

Es wird im Ausführungsergebnis korrekt angezeigt.

Zusammenfassend werden Klassen und Methoden basierend auf der klaren Idee der Objektorientierung erstellt. Stellen Sie sich vor, Sie ersetzen Menschen, Dinge und Ereignisse in der realen Welt durch Klassen.

Kapitel 9 Zusammenfassung

Hier lernen wir hauptsächlich Konstruktoren kennen.


public class Hero {
	String name;
	int hp;

	void sleep() {
		System.out.println(this.name + "Geschlafen und erholt!");
	}
	Hero(){
		this.hp = 100;
		
	}
	
}

Fügen Sie die Hero () -Methode wie oben hinzu. Diese Hero () -Methode "Wenn neu ist, wird der in der Methode definierte Prozess automatisch gleichzeitig mit new ausgeführt." Es hat die Eigenschaft von. Eine solche Methode wird als Konstruktor bezeichnet.

Daher ist es nicht erforderlich, HP auf der Seite der Hauptmethode den Anfangswert zuzuweisen.

Wenn Sie es tatsächlich verschieben, können Sie sehen, dass die anfängliche HP 100 enthält.

main1.png

・ Bedingungen, die als Konstruktor betrachtet werden ① Der Methodenname entspricht genau dem Klassennamen (2) Der Rückgabewert ist in der Methodendeklaration nicht beschrieben

Es kann auch deklariert werden, dass der Konstruktor als Argument empfangen werden kann.

	Hero(String name){
		this.hp = 100;
		this.name = name;
	}

Geben Sie die Hauptmethode an, wenn Sie die Argumente neu erstellen, die Sie beim Ausführen des Konstruktors übergeben möchten.

main2.png

Sie können sehen, dass Minato im Namen enthalten ist.

Impressionen

Seit ich neu in Java bin, mache ich mit etwas Sinn objektorientiert. Ist es wirklich richtig, auch wenn ich diesen Artikel tatsächlich schreibe? Es gab einige Fragen darüber, was es bedeutete. Insbesondere hatte ich das Gefühl, dass es viele Teile gab, in denen der Konstruktorteil mehrdeutig war. Es scheint, dass es nur wenige Teile gab, die zusammengesetzt werden konnten. Anstatt jedoch eine so wesentliche Bedeutung zu verstehen, lesen, schreiben und führen Sie ein Buch aus Ich dachte, es würde zum Verständnis führen. Wenn ich mir dieses Buch genauer anschaue, denke ich, ich könnte ein wenig verstehen, was ich getan habe. Ich dachte, ich könnte es meistern, indem ich mehr über die folgenden Kapitel erfahre.

Recommended Posts

[Java] Objektorientiert
Objektorientiertes FizzBuzz (Java)
[Java] Objektorientierte Zusammenfassung_Teil 1
[Java] Objektorientierte Syntax - Konstruktor
Objektorientierte (Java) Grundlagen
[Java] Objektorientierte Zusammenfassung_Teil 2
[Java] Objektorientierte Syntax --Paket
Java
Java
Objektorientiert mit Strike Gundam (Java)
Objektorientierte Zusammenfassung von Anfängern (Java)
Memorandum über Java 3-Hauptelemente (objektorientiert)
Java lernen (0)
Java studieren ―― 3
[Java] -Array
[Java] Anmerkung
[Java] Modul
Java-Array
Java-Tipps, Tipps
Java-Methoden
Java-Methode
Java (Konstruktor)
Java-Array
[Java] ArrayDeque
Java (überschreiben)
Java (Methode)
Objektorientierte Zusammenfassung
[Java] Objektorientierte Syntaxklassenmethode / Argument
Java Day 2018
Java (Array)
Java statisch
Java-Serialisierung
JAVA hat bezahlt
Java (gesetzt)
Java-Shell-Sortierung
Java studieren -5
Java reflektierend 获 获 举
Java (Schnittstelle)
Java-Memorandum
Java studieren ―― 1
[Java] Array
[Java] Polymorphismus
Java # 0 studieren
Java-Überprüfung
Java-Framework
Java-Funktionen
Java-Funktionen
Java Anfänger 3
Java-Memo
Java (Kapselung)
Java-Vererbung
[Java] Überladung
Java-Grundlagen
Java dekompilieren
[Java] Anmerkung
Java Note
Java Anfänger
Java (add2)
JAVA (Karte)
[Java] -Schnittstelle