java内部类

来源:互联网 发布:unity3d毕设赛车游戏 编辑:程序博客网 时间:2024/06/06 09:00

本文是我学习Java内部类时的心得,分享给大家,望多多指教!


定义:

内部类( InnerClass )就是定义在另外一个类里面的类。与之对应,包含内部类的类被称为外部类。

用处:

内部类可以把内部类封装在外部类之内,不允许同一个包中的其他类访问该类;

内部类的方法可以直接访问外部类的所有数据,包括私有的数据。

分类:

成员内部类

静态内部类

方法内部类

匿名内部类


先来了解一下“成员内部类”,实例如下:



运行结果:


特别注意:在使用外来外部类时,一定要导包。





运行结果:


【总结】:

u  如果外部类的成员(包括静态成员)与内部类的成员名称不相同,则可通过“外部类的成员名”直接调用外部类的成员(包括静态成员);

u  如果外部类的静态成员与内部类的成员名称相同,可通过“类名.外部类的静态成员”访问外部类的静态成员;

u  如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法;

u  如果外部类和内部类具有相同的成员变量或方法,要想访问外部类的成员,必须通过“外部类名.this.外部类的成员名”调用外部类的成员。

 

另外:非静态内部类,定义静态成员时,必须加final关键字。



对于方法内部类,简单提一下:

方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用


匿名内部类不是这里的重点。

0 0
原创粉丝点击