首页 > 代码库 > 内部类
内部类
- 在Java中,允许一个类的定义位于另一个类的内部,前者成为内部类,后者成为外部类。
- Inner class一般用在定义他的类或语句块之外,在外部引用它时必须给出完整的名称,Inner class的名字不能与包含它的类名相同。
- Inner class可以使用外部类的私有数据,因为他是外部类的成员,同一个类的成员之间可互相访问。而外部类要访问内部类中的成员需要:“内部类.成员”或者“内部类对象.成员”。
- 分类:
- 成员内部类(static成员内部类和非static成员内部类):作为成员,成员内部类可以有修饰符(4个),可以用static与final修饰,可以调用外部类的属性、方法;作为类,可以为abstract的,内部可以有属性、方法、构造器。
- 局部内部类(不谈修饰符):使用场景通常为使一个方法返回某个类或接口的对象,而这个类或接口在方法内部创建。
- 匿名内部类
掌握三点:
- 如何创建成员内部类的对象
......
Person.Stomach s = new Person.Stomach();//其中Stomach为Person类的静态成员内部类
Person p = new Person();
Person.Clothes c = p.new Clothes();//其中Clothes为Person类的非静态成员内部类
......
- 如何区分调用内、外部类的属性(尤其是变量重名时)
- 如何使用局部内部类
......
public Comparable getComparable() {//返回实现
Comparable接口的匿名内部类的对象return new Comparable() {
- @Override
public int compareTo(Object o) {
return 0;
}
};
}
......
内部类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。