29 面向对象编程 static 关键字

补充:static

代码
// static
public class Student{
    private static int age; // 静态的变量	多线程
    private double score;	// 非静态的比那辆
    
    
    public void run(){
        
    }
    
    public static void go(){
        
    }
    
    
    
    // main 方法
    {
        go();
        
        //-------
        Student s1 = new Student();
        System.out.println(Student.age);	// 类变量
        System.out.println(s1.age);	// 对象的变量
        System.out.println(s1.score);
	}
}


// ----------------------
public class Person(){
    {
        // 创建这个对象的时候就创建了,在构造器之前
      	// 没有名字,程序不能调用这个模块
        // 代码块(匿名代码块)
    }
    
    static{
        // 静态代码块
        // 跟类一加载,就执行,只执行一次
    }
    
}
// ==============================
public class Person(){
    {
        // 赋初始值
        System.out.println("匿名代码块");	//执行顺序:2
    }
    
    static{
        // 只执行一次 
        System.out.println("静态代码块");	//执行顺序:1
    }
    public Person(){
        System.out.println("构造方法");		//执行顺序:3
    }
}
// 静态导入包
import static java.lang.Math.random;
import static java.lang.Math.PI;

public class Test(){
    System.out.println(random());
    System.out.println(PI);
}

posted @ 2022-03-06 01:33  千寻简  阅读(23)  评论(0编辑  收藏  举报