Freitag, 24. Juli 2015

关键字static 的理解

Es können Attribute und Methode definiert werden,deren Nutzung nicht an die Existenz von Objekten gebunden ist.

上面说的这种情况就是用statische Variable 和statische Methode.

Es existiert nur ein Exemplar dieser Varialben,unabhängig von der Anzahl der Instanzn der Klasse,und Ihre Lebensdauer erstreckt sich über das ganze Programm.
和static有关的变量和方法之和class有关。

public class StaticTest{
       static double PI=3.1415;
       static int id;
       public static void method1(){
       //方法体
       }
       public void methode2(){
       System.out.println(StaticTest.PI);
       System.out.println(StaticTest.id);
       StaticTest.method1();
       }
}

用类名.变量名或者类名.方法名调取
静态数据和静态方法的中用通常是为了提供共享数据或者方法。如数学计算公式。数据常量。

它是属于整个类的。不是属于某个对象的。
没有对象也可以访问,用类名.变量名

public class cat{
       private static int sid = 0;
       private String name;
       int id;
       cat(String name){
           this.name = name;
           id = sid++;
       }
       public void info(){
           System.out.println("my name is" + name + "No." + id)
       }

      public static void main(String args[]){
             cat.sid = 100;//可以直接在主方法里,给sid赋值,不需要通过对象。
             cat mimi = new cat("mimi");
             cat pipi = new cat ("pipi");
             mimi.Info();
             pipi.Info();
}


}

Keine Kommentare:

Kommentar veröffentlichen