`
xiaoheichuangtianya
  • 浏览: 28821 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

静态内部类

    博客分类:
  • java
阅读更多
匿名内部类也就是没有名字的内部类

正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写

但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口


例如线程 继承Thread 实现Runnable接口

abstract class Person {
    public abstract void eat();
}

public class Demo {
    public static void main(String[] args) {
        Person p = new Person() {
            public void eat() {
                System.out.println("eat something");
            }
        };
        p.eat();
    }
}

interface Person {
    public void eat();
}

public class Demo {
    public static void main(String[] args) {
        Person p = new Person() {
            public void eat() {
                System.out.println("eat something");
            }
        };
        p.eat();
    }
}


一个内部类对象可以访问创建它的外部类对象的内容

内部类里的一个成员变量与外部类的一个成员变量同名,也即外部类的同名成员变量被屏蔽了,怎么办?没事,Java里用如下格式表达外部类的引用:


outerClass.this

有了它,我们就不怕这种屏蔽的情况了。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics