//内部类,可以等同的当成一个方法来看待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);//在方法内再调用方法,只能通过传参 }} |