您的位置:首页 > 移动开发 > Android开发

Android内部类,静态内部类,匿名内部类

2018-03-29 20:40 204 查看

1 内部类:

内部类是建立在外部类里面的,可以调用外部类的方法,但是外部类到不可以调用内部类的private属性,方法等。内部类持有外部内的原因可以理解为初始化一个内部类的前提是先初始化一个外部类
内部类 内部类名 = new 外部类. new 内部类
内部类的使用一般是因外这个类的使用限于在外部类上使用,其他地方也不需要使用

2 静态内部类

静态内部类并不是一开始就创建的!它与静态成员不一样,并不能直接通过外部类名.内部类名的方式就可以直接访问并得到它的对象,通俗一点来说就是:静态内部类跟正常的一个外部类一样,它需要创建才能有

静态态内部类并不会依赖于任何一个外部类实例,它可以在适当的时候被系统回收!所以,静态内部类对象的生命跟普通的对象一样,生命开始于开发者创建它,结束于系统回收它!(注:如果在传递的过程中存在静态引用,依然有可能造成内存泄漏)
外部类.静态内部类 静态内部类名 = new 外部类.静态内部类()

3 匿名类

定义这个类的同时定义了这个类的实例,平时Android开发中handler,runnable, Timertask之类的进程会用到,一般只初始化一次,也称为匿名内部类,持有外部类的强引用,所以经常使用不当容易造成内存泄漏。处理的方式一般也是使用弱引用,将匿名内部类修改成static方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐