這里借一本java基礎教材出上的關于對static的一些講解繼續學習。
被聲明為static的變量,常量,方法被稱為靜態成員。靜態成員是屬于類所有的,區別于個別對象,可以在本類或其他類使用類名和“.”運算符調用靜態成員,語法格式如下:
類名.靜態類成員
創建StaticTest類,來調用靜態成員并加以理解:
該類的主方法調用靜態成員并在控制臺中輸出
public class StaticTest { static double PI = 3.1415; //在類中定義靜態常量 static int id; //在類中定義靜態變量 public static void method1() { //在類中定義靜態方法 } public void method2() { //在類中定義一個非靜態方法 System.out.PRintln(StaticTest.PI); //調用靜態常量 System.out.println(StaticTest.id); //調用靜態方法 StaticTest.method1(); //調用靜態方法 }}靜態方法同樣遵循權限修飾符的規則。在Java語言中規定不能將方法體內的局部變量聲明為static。
而關于main的static,只能是先認定是main作為一個特殊的程序入口,在程序執行時必須先來分配內存,所以將其定義為static,但其可以調用非靜態的成員。
在main中訪問非靜態的成員需要先對成員進行實例化,然后通過
對象名 . 方法或成員名的形式來調用。
新聞熱點
疑難解答