static
如果是静态变量,可以通过类名.变量名访问
如果是静态方法,可以直接调用,非静态方法也可以直接调用静态方法
可以用static静态导入包
代码示例:
package com.oop.demo04;
//静态导入包
import static java.lang.Math.random;
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);
System.out.println(s1.age);
System.out.println(s1.score);
System.out.println(random());//静态导入后,此时random()可以直接使用,不需要用Math.random()这种方法调用
go();
}
}
static还可以用来构造静态代码块
package com.oop.demo04;
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();
}
}
此时,静态代码块最先被执行