static关键字详解
package com.oop.Demo07;
public class Person {
// {
// //代码块(匿名代码块)
// }
//
// static {
// //static代码块(静态代码块)
// }
//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;
//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) {
// run();非静态方法不能直接调用
new Student().run();
go();
// Student s1=new Student();
//
// System.out.println(Student.age);
// //System.out.println(Student.score);非静态变量不能访问
// System.out.println(s1.age);
// System.out.println(s1.score);
}
}
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);
}
}