1,新建Person类
package oop.demo08;
/*
静态代码块
*/
//public final class Person { ------定义 final 之后 不能被继承
public class Person {
{
// 代码块(匿名)
// 跟对象同时产生 --------赋一些初始值
System.out.println("匿名代码块");
}
static { //类加载执行 (永久 只执行一次)
//静态代码块
System.out.println("静态代码块");
}
public Person() {
System.out.println("无参构造方法");
}
public static void main(String[] args) {
Person person = new Person();
System.out.println("==================");
Person person2 = new Person();
}
/*
依次输出的顺序是:
静态代码块
匿名代码块
无参构造方法
==================
匿名代码块
无参构造方法
*/
}
运行结果
2,新建Student类
package oop.demo08;
//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(Student.age);//0
System.out.println(s1.age);//0
System.out.println(s1.score);//0.0
// 通过对象点方法调用
new Student().run();
Student.go();
go();
}
}
运行结果
3,新建Test类
package oop.demo08;
//静态导入包
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);//3.141592653589793
}
}
运行结果