静态方法只能调用静态成员变量,静态变量尽量通过类名去访问即:类.方法名
静态变量静态方法和非静态变量非静态方法对比:
private static int age;//静态变量 多线程
private double score;//非静态变量
public void run (){//非静态方法可以直接调用静态方法
System.out.println("run");
go();
}
public static void go(){
System.out.println("go");
}
public static void main(String[] args) {//静态方法无法调用非静态方法
Student s1 = new Student();
System.out.println(Student.age);//静态变量尽量通过类名去访问即:类.方法名 System.out.println(Student.score);
System.out.println(s1.score);
System.out.println(s1.age);
代码块的执行速度:
//第二执行:一般赋初始值
{
System.out.println("匿名代码块");
}
//最先执行,只执行一次
static {
System.out.println("静态代码块");
}
//第三执行
public Person(){//构造器:无返回值,方法名与类名相同
System.out.println("构造方法");
}