知识大全 Java内部类与匿名内部类
Posted 变量
篇首语:策马前途须努力,莫学龙钟虚叹息。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java内部类与匿名内部类相关的知识,希望对你有一定的参考价值。
Java内部类与匿名内部类 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
定义在类中方法之外的内部类分为实例内部类和静态内部类
实例内部类自动持有外部类的实例的引用 即可以访问外部类的所有变量
静态内部类可以直接访问外部类的静态成员
定义在方法中的内部类叫局部内部类 该类只能访问被final修饰的局部变量和参数
接口定义如下
view plainprint?
interface Super public void print() view plainprint?
//例子 public class Test int c= public Super getInstance() int a= final int b= class Inner implements Super public void print() //局部内部类中访问本方法的局部变量System out println(a) //编译错误 从内部类中访问局部变量 a 需要被声明为final //内部类中访问成员变量System out println(b) //正常System out println(c) //正常 return new Inner()
public static void main(String[] args) Super s=new Test() getInstance() s print() 例子 对上面例子 的例子改变一下 从内部类 >匿名内部类匿名内部类既然叫匿名 那么名字对于该类来说已经不重要 因为该匿名类的实例本来就不打算给别的类使用或重复使用 仅限于类内部使用或使用一次 所以就不需要类名了 不过因为没有类名匿名内部类也就没有构造函数了
在方法里面定义的局部内部类(不管是否匿名) 它可无条件访问外部类的成员变量 但要访问方法的局部变量或参数 就要加final修饰符
view plainprint?
cha138/Article/program/Java/hx/201311/26753相关参考
publicinterfaceContents intvalue(); publicinterfaceDestination StringreadLabel(); publiccl
Java通过对Java语言规范进行修改显著简化了一些实用结构的实现在那些修改中最引人注目的就是内部类和匿名类如运用得当它们可使程序更易理解和维护本文介绍内部类和匿名
本文代码展示了在一个方法中通过匿名内部类定义一个Thread并Override它的run()方法之后直接启动该线程 下面的代码展示了在一个方法中通过匿名内部类定义一个Thread并Overrid
在线文档阅读开发手记(一)) 从程序设计语言的理论上局部内部类(即定义在方法中的内部类)由于本身就是在方法内部(可出现在形式参数定义处或者方法体处)因而访
要想使用new生成一个内部类的实例需要先指向一个外部类的实例也就是先生成外部类的实例因为内部类可以调用外部类的人员成员当没有外部类实例的时候也就没有这些成员的内存空间内部类在实例化的时候调用外部类
使用内部类让Java实现“多继承” 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 使用内部类让J
创建Java内部类的编译错误处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在创建非静态内部
Java反射机制获取内部类的静态成员 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 最近需要些一
浅析Java内部类在GUI设计中的作用(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 对于
浅析Java内部类在GUI设计中的作用(2) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 四方