• java代码执行顺序



    package
    com.liubingfei.test; /** * @author LiuBingFei * @desc 测试java类中静态代码块,动态代码块,构造方法,普通方法执行顺序,继承父类时的执行顺序。 * 一、没有继承时候的执行顺序 * 1. 静态代码块---编译的时候执行 * 2. 动态代码块 * 3. 构造方法 * 4. 普通方法 * 二、有继承时候的执行顺序 * 1. 父类的静态代码块 * 2. 子类的静态代码块 * 3. 父类的动态代码块 * 4. 父类的无参构造方法 * 5. 子类的动态代码块 * 6. 子类的有参构造方法 * 7. 子类的普通方法 * @date 2020/3/2 20:59 * @return */ public class sequence extends Father{ private static String name; static { System.out.println("执行静态代码块"); } { System.out.println("执行动态代码块"+name); } public sequence() { System.out.println("执行无参构造方法"+name); } public sequence(String name){ this.name = name; System.out.println("执行有参构造方法"+name); } public void test(){ System.out.println("执行普通方法"+name); } public static void test2(){ System.out.println("执行静态方法"); } public static void main(String[] args){ sequence seq = new sequence("liubingfei"); seq.test(); //test2(); } }

    总结:

    * 一、没有继承时候的执行顺序
    * 1. 静态代码块---编译的时候执行
    * 2. 动态代码块
    * 3. 构造方法
    * 4. 普通方法
    * 二、有继承时候的执行顺序
    * 1. 父类的静态代码块
    * 2. 子类的静态代码块
    * 3. 父类的动态代码块
    * 4. 父类的无参构造方法
    * 5. 子类的动态代码块
    * 6. 子类的有参构造方法
    * 7. 子类的普通方法

  • 相关阅读:
    redis 笔记
    经验:什么影响了数据库查询速度、什么影响了MySQL性能 (转)
    对于线程安全的一些理解
    重要的接口需要做哪些检查(转)
    数据库分库分表思路
    代码优化:Java编码技巧之高效代码50例
    java new一个对象的过程中发生了什么
    java如何防止反编译(转)
    运用加密技术保护Java源代码(转)
    redis 工具包
  • 原文地址:https://www.cnblogs.com/liubingfei/p/12398364.html
Copyright © 2020-2023  润新知