如果 我在 方法内部类外的方法中 定义一个变量 ;如何获得? public void showInner() { int i =52; class InnerClass{ private int s = 325; private void showInnerClass() { System.out.println("方法内部类使用:"+s); System.out.println("此处我改如何获得 i 的值"); }} InnerClass ic = new InnerClass(); ic.showInnerClass();}
package com.my.baseTest;
/**
* JavaOutInnerClass 的测试
* @author my129
*
*/
public class JavaOutInnerClassTest{
public void showInner() {
/**
* <h4>i 字段 :该字段 用 final 修饰后,可在方法内部类中调用;</h4>
*/
final int i =52;
class InnerClass{
private int s = 325;
private void showInnerClass() {
System.out.println("方法内部类使用:"+s);
System.out.println("此处我改如何获得 i 的值" + i);
}
}
InnerClass ic = new InnerClass();
ic.showInnerClass();
}
public static void main(String [] args){
JavaOutInnerClassTest hello = new JavaOutInnerClassTest();
hello.showInner();
}
}package com.imooc;
public class HelloWorld{
public void showInner() {
int i =52;
class InnerClass{
private int s = 325;
private void showInnerClass() {
System.out.println("方法内部类使用:"+s);
System.out.println("此处我改如何获得 i 的值" + i);
}
}
InnerClass ic = new InnerClass();
ic.showInnerClass();
}
public static void main(String [] args){
HelloWorld hello = new HelloWorld();
hello.showInner();
}
}内部类的方法中访问外部属性--------外部类名.this.属性名
即:System.out.println("此处我改如何获得 i 的值"+外部类名.this.i);------这里你没给出外部类,你只有外部的方法。。。。。public void showInner()前面应该有如public class HelloWorld