zoukankan      html  css  js  c++  java
  • java关于静态块儿 静态变量的执行顺序的笔记(转载)

    执行顺序

    还是上别人的吧 写的不错 了解得透彻 https://www.cnblogs.com/kingxiaozi/p/6021011.html

    package com.osy.test;
    
    /**
     * * @author 作者 E-mail: * @date 创建时间:2018年8月28日 上午10:33:36 * @version 1.0
     * * @parameter * @since * @return
     */
    public class Test { // 1.第一步,准备加载类
    
        public static void main(String[] args) {
            new Test(); // 4.第四步,new一个类,但在new之前要处理匿名代码块
        }
    
        static int num = 4; // 2.第二步,静态变量和静态代码块的加载顺序由编写先后决定
    
        {
            num += 3;
            System.out.println("b"); // 5.第五步,按照顺序加载匿名代码块,代码块中有打印
        }
    
        int a = 5; // 6.第六步,按照顺序加载变量
    
        { // 成员变量第三个
            System.out.println("c"); // 7.第七步,按照顺序打印c
        }
    
        Test() { // 类的构造函数,第四个加载
            System.out.println("d"); // 8.第八步,最后加载构造函数,完成对象的建立
        }
    
        static { // 3.第三步,静态块,然后执行静态代码块,因为有输出,故打印a
            System.out.println("a");
        }
    
        static void run() // 静态方法,调用的时候才加载// 注意看,e没有加载
        {
            System.out.println("e");
        }
    }

    静态块(静态变量)——>成员变量——>代码块——>构造方法——>静态方法 

    输出abcd

    解释一哈 先是执行static静态块或者是静态变量 那个静态方法调用的时候才加载所以不管 然后会去执行main函数 然后new对象的时候执行构造块儿的方法 如果有构造函数

    则会执行构造函数的方法

    给个链接 看了之后会更清楚
    https://blog.csdn.net/whing123/article/details/77988936
    https://blog.csdn.net/wzw9353/article/details/74892149这个主要是讲jvm

    https://www.cnblogs.com/numen-fan/p/7163745.html?utm_source=itdadao&utm_medium=referral 这个是解答为什么main函数是static的

  • 相关阅读:
    堆栈学习
    需要阅读的书籍
    Rust Book Lang Ch.19 Fully Qualified Syntax, Supertraits, Newtype Pattern, type aliases, never type, dynamic sized type
    Rust Lang Book Ch.19 Placeholder type, Default generic type parameter, operator overloading
    Rust Lang Book Ch.19 Unsafe
    Rust Lang Book Ch.18 Patterns and Matching
    Rust Lang Book Ch.17 OOP
    Rust Lang Book Ch.16 Concurrency
    Rust Lang Book Ch.15 Smart Pointers
    HDU3966-Aragorn's Story-树链剖分-点权
  • 原文地址:https://www.cnblogs.com/oushiyang/p/9547212.html
Copyright © 2011-2022 走看看