Hier werden wir Klassenmethoden vorstellen. Die Variablen in der Klasse, die zu Beginn der Deklaration statisch sind, werden als Klassenvariablen bezeichnet. Ebenso wird eine Methode, die zu Beginn der Deklaration statisch ist, als Klassenmethode bezeichnet. Sie können es lesen, wenn Sie die Struktur der Klasse kennen und wissen, wie die Methode geschrieben und aufgerufen wird. Außerdem wird der Zugriffsspezifizierer weggelassen. (Ich denke, Sie können es lesen, ohne es zu wissen.)
Klassenmethoden werden beim Aufruf nicht instanziiert. Verwenden Sie beim Aufrufen den Klassennamen. Es gibt einige nützliche Dinge und Dinge, die Sie beachten sollten.
Ich habe zusammengefasst, wie man Klassenmethoden schreibt und verwendet.
Die Methode zum Schreiben einer Klassenmethode ist wie folgt.
Name der öffentlichen Klasse{
public static Rückgabetyp Methodenname(Argumenttyp Argument){
//Inhalt der Methode
}
}
Es wird nur statisch hinzugefügt. Es gibt also keine Konfiguration. Statische Methoden können jedoch nur mit statischen Methoden verwendet werden.
Klassenmethode mit Klassennamen ohne Instanz
Name der Klasse.Methodenname(Argumenttyp Argument);
Rufen Sie an wie.
Als nächstes schreiben wir ein Beispiel für eine Klassenmethode. Der Klassenname lautet Call class.
public void Call(){
public static void Dog(){
System.out.println("Bow-wow");
}
public static void Cat(){
System.out.println("Miau Miau");
}
public static void Monkey(){
System.out.println("Ukey");
}
}
Rufen Sie die statischen Methoden dieser Klasse von der Hauptmethode aus auf. Beachten Sie, dass wir den Klassennamen verwenden, anstatt ihn zu instanziieren.
public class MainMethod(){
public static void main(String[] args){
Call.Dog();
Call.Cat();
Call.Monkey();
}
}
Jetzt so
Bow-wow
Miau Miau
Ukey
Wird die Ausgabe sein.
Klassenmethoden werden nicht instanziiert. Mit anderen Worten, es kann nicht für jede Instanz unterschieden werden. In der folgenden Klasse wird beispielsweise die Häufigkeit, mit der die Methode in der Klasse für jede Instanz aufgerufen wird, von der Variablen instans_count gezählt. Diese Variable instans_count ist sinnvoll, da sie instanziiert wird. Statische Methoden machen also keinen Sinn.
public class ClassValue2 {
private int s = 3;
private static int static_count = 0;
private int instans_count = 0;
public void add(int num){
s = num + s;
static_count = static_count + 1;
instans_count = instans_count + 1;
}
public void substract(int num){
s = -num + s;
static_count = static_count + 1;
instans_count = instans_count + 1;
}
public void multiple(int num){
s = num*s;
static_count = static_count + 1;
instans_count = instans_count + 1;
}
public void division(int num){
s = 1/num*s;
static_count = static_count + 1;
instans_count = instans_count + 1;
}
public void confirmation(){
System.out.println("static_count:" + static_count);
System.out.println("instans_count:" + instans_count);
System.out.println("s:" + s);
}
}
Recommended Posts