Java支持在一个类中声明另一个类,这样的类称为内部类,而包含内部类的类称为内部类的外嵌类。
的确,一个java源文件中有多个类,那么只能有一个类是public类,例如:
源文件名A.java
public class A{
...
}
class B{
...
}
而对于内部类来说,内部类作为外部类的一个成员而存在,类的成员可以用public修饰,仔细看大括号的区别:
public class A{
...
public class B{
...
}
}
内部类可以是public的,也可以是private及protected,但外部类不能是private及protected。