一、内部类
- 定义:一个类的类体内再定义一个类,该情况下外面的类称为“外部类”,里面的类称为“内部类”。
- 内部类分为:①成员内部类 ②局部内部类
③静态内部类 ④匿名内部类
所有类可以方便访问外部类的私有成员属性。
① 成员内部类:在“外部类”内部定义一个类。
② 局部内部类:在方法中定义的内部类称为局部内部类
注意:不能用public或private访问修饰符进行声明;
作用域限定在声明该类的方法块中;
可以对外界完全隐藏起来。
实际开发中,很少使用局部内部类,因为它作用域很小,只能在方法中使用。
③ 静态内部类:使用static修饰一个内部类,称为静态内部类。
④ 匿名内部类:无名字的内部类,适合只需要使用一次的类。
注意:1)不能有构造方法;
2)不能定义任何静态成员、方法和类,但非静态方法属性内部类可以定义;
3)只能创建一次;
4)一定跟在new后面,创建共实现的接口或父类的对象。
二、单例模式
实现方式:①构造方法私有
②用一个私有的静态变量引用实例
③提供一个公有的静态方法获取实例