1、在一个类Outer中定义了属性name和i,其构造方法将name赋值为Outer,i赋值为20,在Outer中定义一个内部类Inner,也定义了属性name和i,并将其初始化为Inner和10;在内部类中编写一个方法printInfo(),输出外部类和内部类中所有的属性值。编写测试类实现如下参考结果图
时间: 2023-06-14 21:04:06 浏览: 49
参考代码如下:
Outer.java
```
public class Outer {
private String name;
private int i;
public Outer() {
this.name = "Outer";
this.i = 20;
}
public class Inner {
private String name;
private int i;
public Inner() {
this.name = "Inner";
this.i = 10;
}
public void printInfo() {
System.out.println("Outer name: " + Outer.this.name);
System.out.println("Outer i: " + Outer.this.i);
System.out.println("Inner name: " + this.name);
System.out.println("Inner i: " + this.i);
}
}
}
```
Test.java
```
public class Test {
public static void main(String[] args) {
Outer outer = new Outer();
Outer.Inner inner = outer.new Inner();
inner.printInfo();
}
}
```
输出结果为:
```
Outer name: Outer
Outer i: 20
Inner name: Inner
Inner i: 10
```