Ich schrieb über die Objektorientierung, die ich im Training gelernt hatte, als Memo für mich. Ich kaue und fasse den Inhalt zusammen, den ich verstopft oder untersucht habe.
·Klasse ·Beispiel ・ Mitgliedsvariablen · Methode ·Konstrukteur ・ Klassenvariable (statische Variable) ・ Vererbung · Überschreiben
・ Klasse: Vorlage, Vorlage (zB Mensch) -Instanz: Eine Entität, die basierend auf einer Klasse erstellt wurde (z. B. A, B, ...)
-Mitgliedvariablen: Instanzattribute (z. B. körperliche Stärke, Intelligenz, Alter) -Methode: Aktionen, die eine Instanz ausführen kann (z. B. Gehen, Hallo sagen) -Konstruktor: Grundeinstellung der Mitgliedsvariablen
-Klassenvariable (statische Variable): Klassenattribut (Wenn Sie die Daten von Herrn A neu schreiben, werden die Daten von Herrn A und die Daten von Herrn B auf dieselbe Weise geändert.)
Vererbung: Wenn eine Klasse abgeleitet wird, kann auch die Funktion der ursprünglichen Klasse (Superklasse) verwendet werden. -Überschreiben: Wenn Sie eine Klasse erben, definieren Sie die Methode (den Prozess) der Oberklasse in der Unterklasse neu (überschreiben Sie sie).
Unten habe ich den Code geschrieben, der die Beziehung zwischen Klassen, Instanzen, Vererbung usw. zeigt. Lesen Sie daher bitte die Erklärung, während Sie sie vergleichen.
Nachdem Sie ein menschliches Modell erstellt haben, erstellen Sie ein japanisches Modell mit menschlichen Merkmalen. Auf dieser Grundlage erstellen wir eine Person namens Taro.
Zu dieser Zeit sind Menschen Oberklassen, Japaner Unterklassen und Taro ist eine Instanz.
Mitgliedsvariablen sind der Status der Instanz. Dieses Mal haben Menschen den Status von körperlicher Stärke, Intelligenz und Sprache.
Dies ist die anfängliche Einstellung der Elementvariablen. In diesem Fall werden die körperliche Stärke und Intelligenz des Menschen durch Argumente festgelegt, und die Sprache wird standardmäßig auf Null gesetzt.
Da Japanisch meine Muttersprache ist, habe ich die Sprache in der Japanischklasse auf Japanisch eingestellt (japanische Vorlage).
Wir haben zwei Aktionen festgelegt, die alle Menschen ausführen können: Gehen und Begrüßen.
Als japanisches Verhalten haben wir außerdem das Verhalten des Winden in der japanischen Klasse festgelegt.
Darüber hinaus sind Grüße Handlungen, die Menschen üblicherweise ausführen, aber die Form ihrer Ausgabe ist Wenn das japanische "Hallo", anders als das chinesische "Nihao". Wenn Sie die Begrüßungsmethode in der japanischen Klasse überladen, versuchen wir, mit "Hallo" zu begrüßen.
================
Human.java
//Klasse (menschliche Vorlage)
public class Human{
//Mitgliedsvariablen (Instanzattribute)
int pysicalPower; //Körperliche Stärke
int intellectualPower; //Intelligenz
String langage; //Sprache
//Klassenvariable (statische Variable)
static int magicPower = 0; //Da es statisch ist, haben alle Menschen 0 magische Kraft. Wenn jemandes magische Kraft auf 10 eingestellt ist, haben alle anderen auch eine magische Kraft von 10.
//Konstruktor (anfängliche Einstellung der Elementvariablen)
public Human(int pysical, int intelligence) {
this.pysicalPower = pysical;
this.intellectualPower = intelligence;
this.langage = null;
}
//Methode (Verhalten)
public void walk() { //gehen
System.out.println("Tech tech");
}
public void greet() { //Grüßen
System.out.println("Hello");
}
//Bestätigungsmethode einstellen
public int getPysicalPower() {
return pysicalPower;
}
public int getIntellectualPower() {
return intellectualPower;
}
public String getLangage() {
return langage;
}
}
Japanese.java
//Klasse (japanische Vorlage)
public class Japanese extends Human { //Eine Unterklasse, die die Klasse Mensch erbt
//Konstrukteur
Japanese(int pysical, int intelligence) {
super(pysical, intelligence); //Rufen Sie den übergeordneten Konstruktor auf
super.langage = "japanisch";
}
//Methode
public void ojigi() { //biegen
System.out.println("Pecoli");
}
//überschreiben
@Override
public void greet() {
System.out.println("Hallo");
}
}
Main.java
public class Main {
public static void main(String[] args) {
//Generieren Sie eine Instanz (individuell basierend auf einer Vorlage)
Japanese Taro = new Japanese(50, 30); /*Japanischer Taro(Körperkraft 50, Intelligenz 30)Generieren Sie a*/
//Überprüfen Sie den Status von Taro
System.out.println("Taros körperliche Stärke" + Taro.getPysicalPower());
System.out.println("Taros Intelligenz" + Taro.getIntellectualPower());
System.out.println("Die von Taro verwendete Sprache ist" + Taro.getLangage());
System.out.println(); //Leerzeile
//Rufen Sie eine Methode (Verhalten) auf
Taro.walk(); //Methoden der menschlichen Klasse
Taro.ojigi(); //Japanische Klassenmethode
Taro.greet(); //Methode in der japanischen Klasse überschrieben
}
}
Ausführungsergebnis
Taros körperliche Stärke beträgt 50
Taros Intelligenz ist 30
Taros Sprache ist Japanisch
Tech tech
Pecoli
Hallo
Als ich über den Code nachdachte und ihn schrieb, der tatsächlich die Objektorientierung verwendet, bekam ich ein etwas tieferes Verständnis. Es gibt einige Teile, die ich nicht gut erklären konnte, weil ich sie nicht gut verstanden habe, und einige Inhalte, die ich nicht aufgenommen habe, um nicht kompliziert zu sein. Daher halte ich es für eine gute Idee, den zweiten Teil im Verlauf des Lernens zu schreiben. (Wenn Sie Lust dazu haben ...)
Websites, auf die ich mich beim Lernen bezogen habe
Recommended Posts