Phymath
2017-02-23 11:03
package com.imooc.org;
public class HelloWorld {
//外部类的私有属性name
private String name = "imooc";
// static //外部类的成员属性
int age = 20;
public void show(){
//成员内部类Inner
int age = 35;
class Inner {
String name = "爱慕课";
int age = 50;
//内部类中的方法
public void show() {
System.out.println("外部类中的name:" + new HelloWorld().name );
System.out.println("内部类中的name:" +name );
System.out.println("外部类中的age:" +age);//这里如何让age = 35 ?
}
}
Inner inn = new Inner();
inn.show();
}
//测试成员内部类
public static void main(String[] args) {
//创建外部类的对象
HelloWorld o = new HelloWorld ();
//创建内部类的对象
// Inner inn =new Inner(); ;
//调用内部类对象的show方法
o.show();
}
}
final 加一个
?同问,我也想到了这个问题
第19行改为
System.out.println("外部类中的name:" + HelloWorld.this.name );
第21行中age是HelloWorld类的方法中的局部变量,并不是外部类HelloWorld中的age
如果要使用外部类中的age,则是HelloWorld.this.age获取到
不需要new
gg 不符合java语法规定吧,,,确实获取不到 ,,网上说不符合java语法
Java入门第二季
531292 学习 · 6327 问题
相似问题
回答 3