public class HelloWorld {
// 外部类中的静态变量score
private static int score = 84;
// 创建静态内部类
public static class SInner {
// 内部类中的变量score
int score = 91;
public static void show() {
System.out.println("访问外部类中的score:" + HelloWorld.score );
System.out.println("访问内部类中的score:" + score);
}
}
// 测试静态内部类
public static void main(String[] args) {
// 直接创建内部类的对象
SInner si=new SInner();
// 调用show方法
si.show();
}
。。eclipse里面没有报错啊!
package com.shiyan;
public class Outer2 {
static int score1=150; //外部类的静态变量
int score2=61; //外部类的普通变量
public static class Inner{ //静态内部类Inner
static int score1=89; //静态内部类的静态变量
int score2=88; //静态内部类的普通变量
public static void show(){ //静态内部类中的静态方法
System.out.println(Outer.score1);
System.out.println(new Outer().score2);//为什么不能用Outer.this.score2
System.out.println(score1);
System.out.println(new Inner().score2);//为什么不能直接用score2;
}
}
//内部测试类
public static void main(String[] args) {
System.out.println(score1);
System.out.println(new Outer().score2);
// Inner.show();
/*Inner in=new Inner();
in.show();*/
new Inner().show();
}
}
输出:
150
62
99
62
89
88
不能定义静态方法