static关键词详解
package com.oop.demo07;
//static
public class Student {
private static int age;//静态变量
private double score;//非静态变量
public void run(){
//go();
}
public static void go(){
}
public static void main(String[] args) {
Student s1 = new Student();
System.out.println(s1.age);
System.out.println(s1.score);
System.out.println(Student.age);
//System.out.println(Student.score); //score 是非静态的,无法用类名直接调用
new Student().run();
go();
Student.go();
}
}
//----------------------------------------------------------------
package com.oop.demo07;
public class Person {
//2.第二执行;可以用作赋初始值
{
System.out.println("匿名代码块"); //代码块 (匿名代码块)
}
//1.第一执行;且执行一次
static {
System.out.println("静态代码块"); //静态代码块
}
//3.第三执行
public Person() {
System.out.println("构造方法");
}
public static void main(String[] args) {
Person person1 = new Person();
System.out.println("============================");
Person person2 = new Person();
}
}
//--------------------------------------------------------------
package com.oop.demo07;
//静态导入包
import static java.lang.Math.random;
import static java.lang.Math.PI;
public class Test {
public static void main(String[] args) {
System.out.println(random());
System.out.println(PI);
}
}