非静态内部类

来源:互联网 发布:安装windows应用商店 编辑:程序博客网 时间:2024/05/20 04:45

内部类是Java提供的一个常用语法,内部类能提供更好的封装,而且可以直接访问外部类的private成员。在一些特殊场合下使用,可能产生一些陷阱。

一、非静态内部类的构造器

        非静态内部类必须寄生在外部类的实例中,没有外部类的对象,就不可能产生非静态的内部类对象。

        系统会在编译阶段总会为非静态内部类的构造器增加一个参数,非静态内部类的构造器的第一个形参类型总是外部类。也就是说非静态内部类没有无参的构造方法。

二、非静态内部类不能拥有静态成员

        对于非静态内部类而言,由于它本身就是一个非静态的上下文环境,因此非静态内部类不允许拥有静态成员。

原创粉丝点击