zoukankan      html  css  js  c++  java
  • 静态代码块,构造代码块,main()

    静态代码块

    • 随Class 加载而加载,为Class 作初始化;
    • 在main() 之前加载;
    • 只执行一次;

    构造代码块

    • 随对象的创建而加载,为对象作初始化
    public class day04 {
    	public static day04 d1 = new day04();
    	//public static day04 d2 = new day04();
    	public day04(){
    		System.out.println("构造方法");
    	}
    	
    	{
    		System.out.println("构造代码块");
    	}
    	static {
    		System.out.println("静态代码块");
    	}	
    	
    	public static void main(String[] args) {
    		System.out.println("main()");
    		//day04 d = new day04();
    	}
    }
    

    输出顺序:

    1.构造代码块
    2.构造方法
    3.静态代码块
    4.main()
    
    public class day04 {
    	public static day04 d1 = new day04();
    	//public static day04 d2 = new day04();
    	public day04(){
    		System.out.println("构造方法");
    	}
    	
    	{
    		System.out.println("构造代码块");
    	}
    	static {
    		System.out.println("静态代码块");
    	}	
    	
    	public static void main(String[] args) {
    		System.out.println("main()");
    		day04 d = new day04();
    	}
    }
    

    输出顺序:

    1.构造代码块
    2.构造方法
    3.静态代码块
    4.main()
    5.构造代码块
    6.构造方法
    

    main()

    • 静态代码块在main() 方法之前加载:
    public class day04 {
    	//public static day04 d1 = new day04();
    	//public static day04 d2 = new day04();
    	public day04(){
    		System.out.println("构造方法");
    	}
    	
    	{
    		System.out.println("构造代码块");
    	}
    	static {
    		System.out.println("静态代码块");
    	}	
    	
    	public static void main(String[] args) {
    		System.out.println("main()");
    		//day04 d = new day04();
    	}
    }
    

    输入结果:

    1. 静态代码块
    2. main()
    
  • 相关阅读:
    redis 基础知识
    vue + django 项目部署
    django 的静态资源
    uwsgi 与 supervisor
    django基础之orm(models)初识
    django基础之模板Template
    django基础知识之视图views
    django基础知识之django介绍及url
    django基础之Web框架介绍
    mysql之pymysql模块相关
  • 原文地址:https://www.cnblogs.com/52liming/p/7905729.html
Copyright © 2011-2022 走看看