class 类名{
private String name;
public void show(){
}
class 类名2{
}
}
3.一个普通的成员内部类中,不能包含静态的成员;
如果要包含静态成员,那么这个内部类必须是静态的;
4.一个静态内部类内部,就可以包含静态的成员和非静态成员;
5.内部类可不可以被继承?可以;
class A
{
class B
{
B(){
System.out.println("实例化一个B");
}
}
}
4、局部内部类:
1.被定义在方法体内的类,称为:局部内部类;
class 类名{
void 方法名(){
class 类名2{
}
}
}
2.局部内部类可以访问外部类成员;
3.局部内部类可以访问同样定义在方法内的局部变量,但变量必须被声明为final的。
class Outside
{
int num = 10;
void show(){
final int num = 20;//如果此局部变量被局部内部类的方法访问,那么这个局部变量,必须被声明为final
class Inside
{
void fun(){
System.out.println("Inside-->fun() num = " + num);
}
}
Inside inner = new Inside();
inner.fun();
}
}
class Demo
{
public static void main(String[] args)
{
Outside outer = new Outside();
outer.show();
}
}