In Bezug auf die Verwendung von Schlüsselwörtern wissen wir bereits etwas über die statische Methode. Um unnötige Fehler bei der Verwendung zu vermeiden, muss jeder den Anwendungsbereich verstehen. Dieser Artikel unterteilt die Punkte, die bei der Verwendung von Static zu beachten sind, in zwei Aspekte: Der eine ist der Zugriffsbereich und der andere ist der Hinweis zum Methodenaufruf. Werfen wir einen Blick auf die vollständigen Punkte, die bei der Verwendung von Static zu beachten sind.
1. Bei Verwendung statischer Methoden können Sie nur auf statisch deklarierte Eigenschaften und Methoden zugreifen, auf nicht statisch deklarierte Eigenschaften und Methoden kann jedoch nicht zugegriffen werden.
Paket com.jk.ref; Klasse Leute{ Stringname; private static String country="China"; public People(String name){ this.name=name; } public void tell(){ System.out.println("name:"+name+" "+"land:"+land); } /** * @das Land zurückgeben */ öffentlicher statischer String getCountry() { Rückkehrland; } /** * @param Land das einzustellende Land */ public static void setCountry(String country) { People.country = Land; } } öffentliche Klasse StaticDemo01 { public static void main(String[] args) { // TODO Automatisch generierter Methoden-Stub People.setCountry("shanghai"); Leute ps1=neue Leute("zhangsan"); //People.country="Shanghai"; ps1.tell(); Leute ps2=new People("lisi"); // ps2.country="Shanghai"; ps2.tell(); Leute ps3=neue Leute("wangwu"); // ps3.country="Shanghai"; ps3.tell(); } }
2. Die übergeordnete Klassenreferenz kann nur die überschriebenen Methoden der übergeordneten Klasse und der untergeordneten Klasse anpassen. Methoden mit demselben Namen der übergeordneten und untergeordneten Klasse werden nicht überschrieben, sondern verdeckt.
öffentliche Klasse TestMain { public static void main(String[] args) { Super sup = new Sub(); //Kapselung (nach oben gerichtet) sup.m1(); // Die übergeordnete Klassenreferenz kann die nicht überschriebene Methode der Unterklasse nicht anpassen und gibt mi in Super aus sup.m2();// Rufen Sie die Unterklassenmethode m2 auf, erben und erstellen Sie zuerst die Methode der übergeordneten Klasse, überschreiben (schreiben) Sie die Methode mit demselben Methodennamen um und geben Sie m2 in Sub aus Sub sub = (Sub)sup; //Unboxing (Form nach unten) sub.m1(); // Rufen Sie die statische Methode m1 der Unterklasse auf, erstellen Sie zuerst die Methode der übergeordneten Klasse, der Methodenname ist derselbe, der Methodenname ist dieselbe Maskierungsmethode, geben Sie m2 in Sub aus sub.m2();// Rufen Sie die Unterklassenmethode m2 auf, erben und erstellen Sie zuerst die Methode der übergeordneten Klasse, überschreiben (schreiben) Sie die Methode mit demselben Methodennamen um und geben Sie m2 in Sub aus } } class Super{ //Übergeordnete Klasse public static void m1() { //Übergeordnete Klasse static method System.out.println(“m1 in Super”); } public void m2() { //Methode der übergeordneten Klasse System.out.println(“m2 in Super”); } } class Sub erweitert Super{ //Subclass public static void m1() { //Subclass static method System.out.println(“m1 in Sub”); } public void m2() { //Unterklassenmethode System.out.println(“m2 in Sub”); } }
Die oben genannten Punkte sind bei der Verwendung von Static in Java zu beachten. Achten Sie darauf, diese beiden Verwendungselemente nicht zu ignorieren. Dies ist auch ein häufiger Fehler, auf den Anfänger beim Üben stoßen.