java內部類

來源:互聯網
上載者:User

標籤:技術分享   java內部類   new   com   font   代碼   構造   重寫   來講   

什麼是內部類?內部類就是類中類,類裡面還有類,這就是叫做內部類。內部類可以在類裡面聲明類也可以聲明介面。8.10所示:

  圖8.10

  為什麼要用到內部類呢?內部類從代碼的角度來講,內部類只是簡化了代碼的操作,但是他沒有什麼太大的特點,如果急需一個類,不讓別人用,那麼這個類就可以什麼在內部。內部類在物件導向思想沒有太大的用處只不過是為了快捷,這就是內部類的用處。

  內部類很多人都是為了簡單才聲明內部類,Java的規則是一個檔案裡面只放一個類就行了,但是非得在檔案裡面寫多個類那麼就不要違反他的規則他的規定是一個檔案只允許有一個帶public的類,而且只要帶了public那麼檔案名稱字就必須和類一致。

  內部類他和類一樣也可以new對象可以調用方法,但是有一個規則內部類分為2種:靜態內部類和執行個體的內部類。

  如果加上了static那麼這個類就是靜態內部類。如果沒有加static的那麼就為執行個體的內部類。可以把內部類看作為屬性,屬性有靜態和執行個體成員 如果是靜態那麼他裡面的靜態方法都可以用靜態類來訪問。如果是執行個體的那麼只能用對象去訪問。8.101所示:

  圖8.101

  如果靜態內部類,他裡面有私人的一個方法但是外部的類可以訪問他裡面的私人方法,因為內部類是屬於腹中的類,腹中的類的任何成員都是可以互相訪問的。

  就比如孕婦裡面懷了一個孩子,他所有的營養都是母親來提供的。所以呢他是完全可以對內部類的私人成員訪問的。8.102所示:

  圖8.102

  如果外部的靜態方法去訪問執行個體的內部類這是不允許的,因為他是執行個體的,執行個體的必須是執行個體的才可以調用。執行個體內部類不允許申請靜態方法和靜態屬性,而靜態內部類可以申請執行個體的方法和執行個體的屬性。

  內部類的訪問方式:

  外類的靜態方法不能對執行個體內部類產生任何訪問,只能new對象訪問。 外類的執行個體方法可以對靜態和執行個體的內部類產生訪問。 外類可以訪問內部類的私人成員。

  靜態內部類在外面構建方式:new 外部類.內部類();

  執行個體的內部類在外面的構造方式:new 外部類().new 內部類();

  無名內部類:

  內部類還有無名內部類,書上或者程式員在android裡面都是用無名內部類多。那麼什麼叫做無名的內部類呢?就是沒有名字的內部類,這就叫做無名的內部類。

  那麼無名內部類到底有什麼用處呢?比如有一個子類繼承了父類重寫了父類的方法,但是他裡面就只有一個方法,那麼寫一個子類去繼承這個類來重寫他的這個方法覺得太麻煩了沒有必要,寫內部類去繼承他也是覺得有點麻煩了,那麼我們就可以寫一個無名的內部類去重寫這個方法。

技術分享:www.kaige123.com

java內部類

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.