内部类顾名思义就是定义在类中的类,下面做一个简单介绍:内部类的访问规则:1,内部类可以直接访问外部类中的成员,包括私有。 之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式 外部类名.this2,外部类要访问内部类,必须建立内部类对象。class Outer{ privat...
分类:
编程语言 时间:
2015-12-01 12:50:54
阅读次数:
155
这种创建Handler的方式会造成内存泄漏,由于mHandler是Handler的非静态匿名内部类的实例,所以它持有外部类Activity的引用,我们知道消息队列是在一个Looper线程中不断轮询处理消息,那么当这个Activity退出时消息队列中还有未处理的消息或者正在处理消息,而消息队列中的Me...
分类:
移动开发 时间:
2015-11-25 19:15:10
阅读次数:
160
内部类的访问规则:1,内部类可以直接访问外部类中的成员,包括私有。2,外面类要访问内部类,必须建立内部类对象。public class Outer { private int x=3; class Inner{ void function(){ ...
分类:
其他好文 时间:
2015-11-24 21:08:41
阅读次数:
116
内部类是指在一个外部类的内部再定义一个类。类名不需要和文件夹相同。*内部类可以是静态static的,也可用public,default,protected和private修饰。(而外部顶级类即类名和文件名相同的只能使用public和default)。注意:内部类是一个编译时的概念,一旦编译成功,就会...
分类:
编程语言 时间:
2015-11-23 00:48:57
阅读次数:
169
一般来说,有4中内部类:常规内部类、静态内部类、局部内部类、匿名内部类。一.常规内部类:常规内部类没有用static修饰且定义在在外部类类体中。1.常规内部类中的方法可以直接使用外部类的实例变量和实例方法。2.在常规内部类中可以直接用内部类创建对象3.代码如下:package com.InnerCl...
分类:
其他好文 时间:
2015-11-14 20:43:33
阅读次数:
263
注册监听的5种方式: 1. 内部类形式 1)写一个类实现监听接口(写类的构造器并实现监听方法) 2)组件监听绑定这个类 2. 外部类形式 3. Activity本身作为事件监听器类 1)implement xxxListener 2)实现事件处理方法 4. 内部匿名类形式 ...
分类:
其他好文 时间:
2015-11-13 23:26:20
阅读次数:
305
这一章节我们来讨论一下嵌套类。1.概念内部类使用static的时候就是嵌套类。package com.ray.ch07;
public class Test {
private static class MyTest3{}
}MyTest3就是嵌套类2.注意点(1)只能跟外部类的static部分进行通信(2)不在持有外部类对象的引用,可以直接使用static特性package com.ra...
分类:
编程语言 时间:
2015-11-13 13:17:26
阅读次数:
224
静态内部类和非静态内部类的区别:1. 静态内部类不持有外部类的引用在普通内部类中,可以直接访问外部类的属性、方法,即使是private类型也可以,这是因为内部类持有外部类的引用,可以自由访问。而静态内部类只能访问外部类的静态方法和静态属性,如果是private也能访问,其他则不能访问。2. 静态内部...
分类:
其他好文 时间:
2015-11-08 14:22:02
阅读次数:
136
day09内部类(inner class):将一个类定义在另一个类的里面,对里面那个类就称为内部类(内置类,嵌套类)特点:a. 内部类可以直接访问外部类中的成员,包括私有成员.(之所有可以直接访问外部类中的成员,是因为内部类中持有了一个内部类的引用,格式:外部类名.this)b.而外部类要访问内部类...
分类:
编程语言 时间:
2015-11-07 13:34:28
阅读次数:
225
1、内部类的含义在一个类的内部再定义一个类,就叫做嵌套类。被嵌套的类(内部类)可以直接访问嵌套它的类(外部类)的成员函数和属性,哪怕是私有的。但是反过来就不行,外部的类不能直接访问内部类的成员。也就是说:1)内部类可以直接访问外部类的成员2)外部类不可以直接访问内部类的成员,需要先创建内部类的对象,...
分类:
编程语言 时间:
2015-11-07 13:33:14
阅读次数:
226