我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:六合公式 > 方法内部类 >

匿名内部类里面不能有静态方法吗??

归档日期:06-07       文本归类:方法内部类      文章编辑:爱尚语录

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  ·匿名内部类不能是抽象类。(因为在创建匿名内部类的时候,会立即创建匿名内部类的对象。从而也可知匿名内部类必须实现它的抽象父类或者接口里包含的所有抽象方法)

  ·一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。

  有时候,我们会用到一些内部类和匿名类。当在匿名类中用this时,这个this则指的是匿名类或内部类本身。这时如果我们要使用外部类的方法和变量的话,则应该加上外部类的类名。

  一个内部类对象可以访问创建它的外部类对象的内容,甚至包括私有变量!Java编译器在创建内部类对象时,隐式的把其外部类对象的引用也传了进去并一直保存着。这样就使得内部类对象始终可以访问其外部类对象,同时这也是为什么在外部类作用范围之外向要创建内部类对象必须先创建其外部类对象的原因。

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

  Java中的静态内部类是没有了指向外部的引用,类似C++中的嵌套类。Java内部类也可以是局部的,它可以定义在一个方法甚至一个代码块之内(记住:匿名内部类就是局部内部类的形式之一)。在java的事件处理的匿名适配器中,匿名内部类被大量的使用。

本文链接:http://renfriends.com/fangfanabulei/521.html