内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类。内部类是一个非常有用的特性但又比较难理解使用的特性。举例来说,
1 | public class OuterClass { |
匿名内部类
匿名内部类是一种特殊的内部类。使用匿名内部类我们必须要继承一个父类或者实现一个接口,当然也仅能只继承一个父类或者实现一个接口。同时它也是没有class关键字,这是因为匿名内部类是直接使用new来生成一个对象的引用。举例来说,
1 | public abstract class Bird { |
上述使用了匿名内部类的语法和如下代码是等价的:
1 | public class WildGoose extends Bird { |