- java内部类概念看了corejava这本书,但是还是不懂里面的
- 看了core这本书,但是还是不懂里面的内部类概念,在的高手教我一下,最好是自己的体会,另带个例子,长篇大论就免了。谢谢
- 可以将一个类的定义放在另一个类的定义内部,这就是内部类。
内部类是一种非常有用的特性,因为它允许你把一些相关的类组织在一起,并控制位于内部的类的可视性。
注意:内部类与组合是完全不同的概念。一定要分清!
创建内部类的方式就如同你想的一样——把类的定义至于外围类里面。
下面我举个例子:
// Parcel1.java
// Creating inner classes.
public class Parcel1 {
class Contents {
private int i = 11;
public int value() { return i; }
}
class Destination {
private String label;
Destination(String whereTo) {
label = whereTo;
}
String readLabel() { return label; }
}
// Using inner classes looks just like
// using any other class, within Parcel1:
public void ship(String dest) {
Contents c = new Contents();
Destination d = new Destination(dest);
System.out.println(d.readLabel());
}
public static void main(String[] args) {
Parcel1 p = new Parcel1();
p.ship("Tanzania");
}
} ///:~