Effective Java 学习笔记第17条 --- 优先考虑静态成员类
嵌套类只为它的外围类提供服务。嵌套类分为四种:静态成员类、非静态成员类、匿名类和局部类(后面三种称为内部类)
?
如果一个嵌套类的实例可以在它外类类的实例之外独立存在,则这个嵌套类应该设置成静态成员类(即:如果你声明的成员类不要访问外围实例,那么应该把static修饰符放到成员类的声明中)。
匿名类的用法:
总结:四种不同的嵌套类都有自己不同的用途,如果一个嵌套类需要在单个方法之外任然是可见的,或者它太长,不适合放在一个方法内部,那么应该使用成员类,如果成员类的每个实例都需要一个指向其外围实例的引用,则把成员类做成非静态的;否则就做成静态的,假设一个嵌套类属于一个方法的内部,如果你只需要在一个地方创建它的实例,并且已经有了一个预先存在的类型可以说明这个类的特征,则把它做成匿名类;否则就做成局部类。
?
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ilibaba/archive/2009/02/06/3866657.aspx