1、
静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员和静态方法。
如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。
2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量。
public class HelloWorld
{ // 定义静态变量
score1 static int score1 = 86;
// 定义静态变量
score2 static int score2 = 92;
// 定义静态方法sum,计算成绩总分,并返回总分
public static int sum() {
return score1+score2;
}
public static void main(String[] args) {
// 调用静态方法sum并接收返回值
int allScore = HelloWorld.sum();
System.out.println("总分:" + allScore); } }
3.静态内部类。
1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问
2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员
3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();