JAVA-匿名內部類

來源:互聯網
上載者:User

標籤:dem   UI   rri   文法   使用   package   rgs   ide   執行個體   

匿名內部類

1.定義:

  實現一個介面,或者繼承一個父類,並返回new好的執行個體。

2. 文法:

   new 類名或者介面名 類的實現體

3.什麼情況下使用匿名內部類:

  類在建立後馬上被使用,且只使用一次

4.注意點:

  ·匿名內部類不能有構造方法  ·匿名內部類不能定義任何靜態成員、靜態方法。  ·匿名內部類不能是public,protected,private,static。  ·只能建立匿名內部類的一個執行個體。  ·一個匿名內部類一定是在new的後面,用其隱含實現一個介面或實現一個類。 5.舉栗子    通過繼承的方式實現匿名內部類:
 1 package com.han6.java; 2  3 public class Fruit  4 { 5     public void saySomething() 6     { 7         System.out.println("I am Fruit!"); 8     } 9     10     public static void main(String[] args) 11     {12         Fruit fruit = new Fruit()13         {14             @Override15             public void saySomething() {16                 System.out.println("I am Apple!");17             }18             19         };20         fruit.saySomething();21     }22 23 }

 

  通過實現介面的方式來使用匿名內部類:
 1 package com.han6.java; 2  3 public class Demo 4 { 5     public static void main(String[] args) 6     { 7         Person person  = new Person() 8         { 9             @Override10             public void eat()11             {12                 System.out.println("a person like to eat fruit!");13             }14         };15         person.eat();16     }17     18 }19 20 interface Person 21 {22     void eat();23 }

6.工作使用:

  匿名內部類是用在具體的某個執行個體上的=修改了這個執行個體所屬類的某些屬性方法,所修改的內容也只對這個執行個體有效相當於一個一次性的類。主要用在某個特殊事件的處理上。

 

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.