tij原文
我们已经看到了许多描述内部类的语法和语义,但是这并不能回答“为什么需要内部类”这个问题。那么,Sun公司为什么会如此费心地增加这项基本的语言特性呢?
一般来说,内部类继承自某个类或实现某个接口,内部类的代码操作创建它的外围类的对象。所以可以认为内部类提供了某种进入其外围类的窗口。
内部类必须要回答的一个问题是:如果只是需要一个对接口的引用,为什么不通过外围类实现那个接口呢?
那么内部类实现一个接口与外围类实现这个接口有什么区别呢?
所以,使用内部类最吸引人的原因是?
个人理解
内部类可以实现多重继承。一个外围类可以包含多个内部类,每个内部类都可以去实现一个接口。