安卓技术-Java内部类
2020-02-18 本文已影响0人
七色瑾林
1. 静态内部类(类级内部类)
静态内部类相当于其外部类的成员,只有在第一次使用时,才会被装载。
与外部类实例没有绑定关系。
常用于线程安全的懒汉式单例类。
(1)只能直接访问外部类的static变量或方法
(2)可直接创建其实例
2. 成员内部类
(1)不能定义static变量或方法
(2)必须先创建外部类实例,再创建其实例
(3)可无限制地访问外部类的成员或方法
3. 局部内部类(方法内部类)
(1)不能用可见性修饰符(private/protected/public)修饰类,但可修饰其变量。
(2)作用域限于方法内
4. 匿名内部类
(1)无构造方法
(2)只可饮用外部final或static的变量(常用于接口回调)
附录:单例类
1. 单例类应用:共享、控制资源访问
网站计数器
日志写入
配置文件读取
数据库连接
线程池
2. 四种线程安全的单例类
饿汉式
同步方法
静态内部类
可见双重校验锁