中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Java中使用靜態內部類

發布時間:2021-05-11 16:40:42 來源:億速云 閱讀:164 作者:Leah 欄目:編程語言

如何在Java中使用靜態內部類?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

Java有哪些集合類

Java中的集合主要分為四類:1、List列表:有序的,可重復的;2、Queue隊列:有序,可重復的;3、Set集合:不可重復;4、Map映射:無序,鍵唯一,值不唯一。

一 點睛

如果使用static來修飾一個內部類,則這個內部類就屬于外部類本身,而不屬于外部類的某個對象。因此使用static修飾的內部類被稱為類內部類,也稱為靜態內部類。

static關鍵字不可修飾外部類,但可修飾內部類。

二 實戰——靜態內部類不能訪問外部類的實例成員,只能訪問外部類的類成員

1 點睛

靜態內部類可以包含靜態成員,也可以包含非靜態成員。根據靜態成員不能訪問非靜態成員的規則,靜態內部類不能訪問外部類的實例成員,只能訪問外部類的類成員。即使是靜態內部類的實例方法也不能訪問外部類的實例成員,只能訪問外部類的靜態成員。

2 代碼

public class StaticInnerClassTest
{
  private int prop1 = 5;
  private static int prop2 = 9;
  static class StaticInnerClass
  {
   // 靜態內部類里可以包含靜態成員
   private static int age;
   public void accessOuterProp()
   {
     // 下面代碼出現錯誤:
     // 靜態內部類無法訪問外部類的實例變量
     //System.out.println(prop1);
     // 下面代碼正常
     System.out.println(prop2);
   }
  }
}

3 說明

accessOuterProp是一個實例方法,但依然不能訪問外部類的prop1成員變量,因為這是實例變量。但可以訪問prop2,因為它是靜態成員變量。

三 實戰——外部類使用靜態內部類

1 點睛

靜態內部類是外部類的一個靜態成員,因此外部類的所有方法、所有初始化塊可以使用靜態內部類來定義變量、創建對象。

外部類依然不能直接訪問靜態內部類的成員,但可以使用靜態內部類的類名作為調用者來訪問靜態內部類的類成員,也可以使用靜態內部類對象作為調用者來訪問靜態內部類的實例成員。

2 代碼

public class AccessStaticInnerClass
{
  static class StaticInnerClass
  {
   private static int prop1 = 5;
   private int prop2 = 9;
  }
  public void accessInnerProp()
  {
   // System.out.println(prop1);
   // 上面代碼出現錯誤,應改為如下形式:
   // 通過類名訪問靜態內部類的類成員
   System.out.println(StaticInnerClass.prop1);
   // System.out.println(prop2);
   // 上面代碼出現錯誤,應改為如下形式:
   // 通過實例訪問靜態內部類的實例成員
   System.out.println(new StaticInnerClass().prop2);
  }
}

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湖南省| 霞浦县| 夏河县| 新密市| 云阳县| 天水市| 察隅县| 永德县| 鹤壁市| 镇江市| 子长县| 会昌县| 康马县| 泰宁县| 佛冈县| 平阴县| 和田市| 陈巴尔虎旗| 五家渠市| 佳木斯市| 西峡县| 西安市| 兴海县| 廊坊市| 盘锦市| 图们市| 乐昌市| 台州市| 松原市| 萝北县| 彩票| 泽库县| 梁平县| 禹城市| 东乌珠穆沁旗| 灌南县| 吕梁市| 从江县| 衡山县| 新昌县| 苏州市|