零EVA

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

匿名内部类:

  1 匿名内部类其实就是内部类的简写格式

  2 定义匿名内部类的前提

    内部类必须是继承一个类或者实现接口

  3 匿名内部类的格式:new 父类或者接口(){定义子类的内容}//()是构造函数,可以传参数

  4 其实匿名内部类就是一个匿名子类对象

  5 匿名内部类中定义的方法最好不要超过3个

 

 1 abstract class AbsDemo
 2 {
 3     abstract void show();
 4 }
 5 
 6 class Outer
 7 {
 8     int x = 3;
 9     /*
10     class inner extends AbsDemo
11     {
12         void show()
13         {
14             System.out.println("method : "+x);
15         }
16     }
17     */
18     public void function()
19     {
20         //new Inner().show();
21         AbsDemo d = new AbsDemo()//匿名内部类
22         {
23             void show()
24             {
25                 System.out.println("x= "+x);
26             }
27             void abc()
28             {
29                 System.out.println("abc");
30             }
31         };
32         d.show();
33         //d.abc();//编译失败
34     }
35 }
36 
37 class InnerClassDemo
38 {
39     public static void main(String[] args)
40     {
41         new Outer().function();
42     }
43 }
View Code

 

posted on 2017-06-12 17:17  零EVA  阅读(288)  评论(0)    收藏  举报