国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java基礎--關于static的變量和方法使用的一些不解

2019-11-14 11:45:28
字體:
來源:轉載
供稿:網友

    有時你希望定義一個類成員,使它的使用完全獨立于該類的任何對象。通常情況下,類成員必須通過它的類的對象訪問,但是可以創建這樣一個成員,它能夠被它自己使用,而不必引用特定的實例。在成員的聲明前面加上關鍵字static(靜態的)就能創建這樣的成員。如果一個成員被聲明為static,它就能夠在它的類的任何對象創建之前被訪問,而不必引用任何對象。你可以將方法和變量都聲明為static。static成員的最常見的例子是main( ) 。因為在程序開始執行時必須調用main(),所以它被聲明為static。聲明為static的變量實質上就是全局變量。當聲明一個對象時,并不產生static變量的拷貝,而是該類所有的實例變量共用同一個static變量。聲明為static的方法有以下幾條限制:1.它們僅能調用其他的static 方法。2.它們只能訪問static數據。 它們不能以任何方式引用this 或super(關鍵字super與繼承有關)。

                                                   ——這是來自百度文庫里以前文章的敘述,關于main的靜態說法仍不是很明白

這里借一本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中訪問非靜態的成員需要先對成員進行實例化,然后通過 對象名 . 方法或成員名的形式來調用。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潼关县| 抚顺市| 历史| 博乐市| 桦甸市| 绥中县| 中卫市| 闵行区| 宁都县| 仁寿县| 麻阳| 南宁市| 西华县| 巢湖市| 连城县| 安岳县| 祁门县| 肇源县| 英德市| 周至县| 安达市| 治县。| 沛县| 绵竹市| 武穴市| 垣曲县| 靖边县| 临城县| 张家界市| 永嘉县| 建阳市| 修武县| 唐河县| 通榆县| 永新县| 绍兴市| 博兴县| 友谊县| 菏泽市| 乐陵市| 安达市|