内部类必须是继承一个类或者实现接口。
匿名内部类的格式:new 父类或接口(){定义子类的内容}
其实匿名内部类就是一个带内容的匿名子类对象。
匿名内部类(from thinking in java 3th)
简单地说:匿名内部类就是没有名字的内部类。什么情况下需要使用匿名内部类?
如果满足下面的一些条件,使用匿名内部类是比较合适的:
1)只用到类的一个实例。
2)类在定义后马上用到。
3)类非常小(SUN推荐是在4行代码以下)
4)给类命名并不会导致你的代码更容易被理解。
在使用匿名内部类时,要记住以下几个原则:
1)匿名内部类不能有构造方法。
2)匿名内部类不能定义任何静态成员、方法和类。
3)匿名内部类不能是public,protected,private,static。
4)只能创建匿名内部类的一个实例。
5)一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。
6)因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效。
|