前言
可以将一个类的定义放在另一个类的定义内部,这就是内部类。 内部类是一种非常有用的特性,因为它允许你把一些逻辑相关的类组织在一起,并控制位于内部的类的可视性。然而必须要了解,内部类与组合是完全不同的概念,这一点很重要。 在最初,内部类可能看起来比较奇怪,而且要花些时间才能在设计中轻松地使用它们。对内部类的需求并非总是很明显的,但是在描述完内部类的基本语法与语义之后,在接下来的几个章节中就会发现内部类的益处。
示例源码
package com.mufeng.thetenthchapter;
public class Parcell {
class Contents {
private int i = 11;
public int value() {
return i;
}
}
class Destination {
private String label;
public Destination(String whereTo) {
// TODO Auto-generated constructor stub\
label = whereTo;
}
String readLabel() {
return label;
}
}
public void ship(String dest) {
Contents c = new Contents();
Destination d = new Destination(dest);
System.out.println(c.value());
System.out.println(d.readLabel());
}
public static void main(String[] args) {
Parcell p = new Parcell();
p.ship("Tasmania");
}
}
输出结果
11 Tasmania
源码解析
当我们在ship()方法里面使用内部类的时候,与使用普通类没有什么不同。在这里,实际的区别只是内部类的名字是嵌套在Parcell里面的。不过你将在下一节看到,这并不是唯一的区别。
- 顶
- 1
- 踩
- 0