Was ist diesmal zu tun?
--Methode --Erbe
Wie der vorherige "Konstruktor" ist es schwer zu verstehen, da es sich um einen Ort handelt, der mit der Objektorientierung zusammenhängt. Ich werde es mit einem Beispiel beschreiben. Bitte lesen Sie bis zu Teil3. Wenn Sie diesen Teil verstehen, ist es einfacher, in einer anderen Sprache zu programmieren, was eine sehr bequeme Denkweise ist. Geben wir unser Bestes.
Hier werden wir über den objektorientierten und überaus wichtigen Teil, die Methode, sprechen. Eine Methode ist ein Teil, der beschreibt, "welche Art von Verhalten" einem von sich selbst erstellten Objekt gegeben wird. Wenn ein Objekt namens "Notebook-PC" erstellt wird, beschreibt der Konstruktor das Objekt selbst, z. B. "who", "color" und "hardware configuration". Andererseits können ** Methoden Verhaltens- / Statusübergänge wie "Start", "Verbindung zum Netzwerk herstellen" und "Dateien komprimieren" ** definieren.
java/Car.java
public class Car
{
int number;
String owner;
int speed;
public Car()
{
this(0000, "None", 0);
}
public Car(int number, String owner, int speed)
{
this.number = number;
this.owner = owner;
this.speed = speed;
}
void info()
{
System.out.println("Nummer:" + this.number);
System.out.println("Inhaber:"+ this.owner);
System.out.println("Geschwindigkeit:"+ this.speed);
}
}
java/Main.java
public class Main
{
public static void main(String[] args)
{
Car car1 = new Car(1234, "Takahashi", 40);
car1.info();
Car car2 = new Car();
car2.info();
}
}
Diesmal habe ich zwei Autos gemacht. Einer ist ein einfacher Besitzer, und der andere ist ein Auto, bei dem nichts eingestellt ist. Da "void info ()" von Car.java von "~ .info ();" von Main.java aufgerufen und der Reihe nach ausgeführt wird, werden alle Informationen als Informationen ausgegeben. Wenn ein Objekt eine Methode wie "car1.info ()" aufruft, ** beschreiben Sie die Methode, mit der Sie aufrufen möchten. "." Nach dem Variablennamen ** und rufen Sie sie auf. Wenn die von Ihnen aufgerufene Methode wie beim Konstruktor ** Argumente enthält, schließen Sie diese ebenfalls ** ein.
...
Ich möchte, dass du einen Moment wartest.
Lassen Sie uns auf Teil 3 zurückblicken.
"Übertragung der Berechnung in eine Datei, aber Ausführung durch Aufrufen des Teils" int math (int num1, int num2) ", der in eine andere Datei in der Hauptdatei geschrieben wurde"
Ja, Sie ** haben bereits eine "Methode mit einem Rückgabewert" ** geschrieben. Das Einbeziehen der Objektorientierung ändert grundsätzlich nichts. ** "Methoden, die nur von Objekten ausgeführt werden können" ** Ist es ** "Methoden, die die Hauptfunktion selbst ausführt" ** Nur geändert.
Da die Methode der Teil ist, der das Verhalten des Objekts in gewissem Sinne ** "Eigenschaften" beschreibt, besteht der Vorteil darin, dass das Verhalten das gleiche ist, selbst wenn es von mehreren Objekten aufgerufen wird **. Dieser Teil ist nützlich für die Vererbung und Schnittstelle, mit der wir uns als nächstes befassen werden.
Ich wollte eigentlich sofort Vererbung schreiben, aber ich werde auf etwas eingehen, das wirklich nützlich ist, um Vererbung mit unberührter Syntax durchzuführen.
Es ist ein Array. Ich habe es noch nicht getan.
Als Bedeutung des Wortes ist es "eine Gruppe von Sequenzen, die vom Anfang bis zum Ende in einer Reihe angeordnet sind". Es gibt jedoch einige nervige Teile, deshalb werde ich vorsichtig vorgehen.
java/Array.java
public class Array
{
public static void main(String[] args)
{
int[] array = {1, 3, 5, 7, 9};
/*
↓ Das Gleiche in einer Zeile tun
int array[] = new int[5]; //Objektsyntax
array[0] = 1;
array[1] = 3;
array[2] = 5;
array[3] = 7;
array[4] = 9;
*/
for(int i = 0; i < array.length; i++) //array.Länge repräsentiert die Länge des Arrays
{
System.out.println((i+1) + "Anzahl der Teile:" + array[i]);
//Die for-Anweisung wird für 5 Zeilen gedruckt
//array[i]Mit können Sie vom Anfang des Elements ausgeben
}
}
}
Arrays sind schwer zu verstehen, da die erste Nummer der ** Elementnummer (Array ** ** [?]) Von 0 bis ** reicht. Ich möchte, dass Sie es in so etwas aufteilen. Die Syntax entspricht fast der des Objekts, der Unterschied besteht jedoch darin, dass dem Namen [] hinzugefügt wird. ** Der Typ ist nur "int []" **. Natürlich kann es Double oder String sein und ** Objekte können auch eingefügt werden **. Beachten Sie, dass beim Schreiben in einer Zeile "[]" an das Muster angehängt wird.
Der Inhalt der for-Anweisung möchte lediglich den Inhalt des Arrays ausgeben. ** ".length" ** wird verwendet, um Fehler so weit wie möglich zu verhindern. Dies bedeutet, dass ** Java für sich selbst sorgt, ohne die Länge des Arrays anzugeben **. Wenn Sie beispielsweise Daten mit mehreren Arrays verwalten möchten, ist es schwierig, dieselbe Syntax mit verschiedenen Elementen zu kopieren, da die Datei lang wird. Wenn Sie dies in einem solchen Fall wissen und es als Methode definieren, wird es unter Berücksichtigung aller Elemente auf einmal ausgeführt. Praktisch.
Bevor ich die Vererbung in Java erkläre, werde ich die Idee der Vererbung vermitteln.
** Vererbung bedeutet "das Verhalten und die Eigenschaften des eigenen Kindes angeben" **. Insbesondere kann das übergeordnete "Auto" laufen und stehen bleiben und ist schwer und groß. Und das ererbte "Superauto" läuft sehr schnell und das Gewicht ist etwas leichter und größer. Auf diese Weise wird ** ein Kind, das unter Beibehaltung einiger Funktionen und Merkmale verbessert wurde, als Unterklasse und sein Elternteil als Oberklasse ** bezeichnet.
Ich werde auch dieses Mal ein Auto erstellen und ein Superauto erstellen und erklären, das es erbt.
java/Car.java
public class Car
{
double weight;
int speed;
Car()
{
this(0.0, 0);
}
Car(double weight, int speed)
{
this.weight = weight;
this.speed = speed;
}
Car(int speed, double weight)
{
this(weight, speed);
}
void drive()
{
System.out.println("Geschwindigkeit" + this.speed + "Bin reingelaufen");
}
void info()
{
System.out.println("Wiegt" + this.weight + "kg");
System.out.println("Die Geschwindigkeit ist" + this.speed + "ist");
}
}
java/SuperCar.java
public class SuperCar extends Car
{
int max_speed;
SuperCar()
{
this(0, 0, 0);
}
SuperCar(double weight, int speed, int max_speed)
{
super(weight, speed);
this.max_speed = max_speed;
}
void CarChase()
{
System.out.println("Geschwindigkeit" + max_speed + "Verfolgungsjagd bei");
}
void info()
{
super.info();
System.out.println("Die Höchstgeschwindigkeit beträgt" + max_speed + "ist");
}
}
java/Main.java
public class Main
{
public static void main(String[] args)
{
Car normal = new Car(200.0, 40);
SuperCar superCar = new SuperCar(180.0, 50, 200);
superCar.drive(); //Sie können es nennen, obwohl es nicht geschrieben ist!
System.out.println("\n");
superCar.info();
}
}
Dieses Mal wurden die Elemente des Autos vom Superauto geerbt, und ** die Methode der übergeordneten Klasse wurde von der Unterklasse ** aufgerufen. In Java (oder eher objektorientiert) sind Kinder besser als Eltern. Es ist auch möglich, Methoden und Konstruktoren zu erstellen, die für die untergeordnete Klasse eindeutig sind, und ** den Inhalt der übergeordneten Klasse für die untergeordnete Klasse zu ändern **. Wenn Sie den Inhalt der übergeordneten Klasse so aufrufen möchten, wie er ist, verwenden Sie "super".
――Was ist Vererbung? -> Weitergabe vom Elternteil an das Kind ――Was ist ein Elternteil? Was ist ein Kind? -> Die überlieferte Klasse ist "Kind" ――Was ist "super"? -> Erforderlich, wenn ein Kind einen Elternteil anruft
Recommended Posts