//内部类,可以等同的当成一个方法来看待
class Test{
int i;
void outMethod(int i){ i = 2;}//一个成员方法,可以直接调用成员属性
class OutTest{
void outMethod(){
i = 2; //所以一个成员内部类也可以直接访问成员属性
}
}
public static void main(String[] args) {
int j = 2;
final int k =5;
class InTest{
int inMethod(int j){ return j = j + k;}//final因为是不可变的常量,所以给了特权
}
InTest it = new InTest();
j = it.inMethod(j);//所以同样的,方法内部类也只能传参,不能直接拿到变量
Test t = new Test();
t.outMethod(j);//在方法内再调用方法,只能通过传参
}
} |