package cs.cwnu;
public class StaticTest {
int a = 1;//非静态变量
static int b = 2;//静态变量
void sayA() {//非静态方法
this.a=2;
System.out.println(a);
this.b = 3;
System.out.println(b);
sayB();
sayC();
}
static void sayB(){//静态方法
//a=2;
b=3;
System.out.println(b);
//sayA();
//sayC();
sayD();
}
void sayC(){
System.out.println("c");
}
static void sayD(){
System.out.println("d");
}
public static void main(String[] args) {
StaticTest s = new StaticTest();
s.sayA();
s.sayB();
}
}
结果
2
3
3
d
c
3
d
测试表明:非静态方法可以调用静态变量和非静态变量和静态方法和非静态方法
静态方法只能调用静态变量和静态方法