• 21.3代码块考试题


    /*
    * 代码执行顺序:静态代码块--构造代码块--无参空构造执行
    * 思路:静态随着类加载而加载,优先于对象。---创建对象---(代码块,提取构造方法中的公共部分,优先构造方法执行。---构造方法)
    * */
    public class BlockTest {
    public static void main(String[] args) {
    Coder c = new Coder();
    }
    }

    class Coder{
    static {
    System.out.println("Coder 静态代码块");
    }

    {
    System.out.println("coder 构造代码块");
    }

    public Coder() {
    System.out.println("Coder 无参空构造执行");
    }
    }

    执行结果

     



    package day21_static.代码块;
    /*
    * 执行顺序:bl_test,静态代码块---main,BlockTest2的主函数执行了---hello,teacher
    * 分析:加载BlockTest2类(加载它的静态代码块:bl_test,静态代码块)---加载main函数(执行main函数---创建对象---执行对象方法)
    * 注意:12-18行没执行,因为没有创建对象。构造方法和构造代码块只有在创建对象时会用
    * */
    public class BlockTest2 {
        static {
            System.out.println("bl_test,静态代码块");
        }
    
        {
            System.out.println("bl_test,构造代码块");
        }
    
        public BlockTest2() {
            System.out.println("bl_test,无参构造执行");
        }
    
        public static void main(String[] args) {
            System.out.println("main,BlockTest2的主函数执行了");
            Teachers t = new Teachers();
        }
    }
    
    class Teachers {
        public Teachers() {
            System.out.println("hello,teacher");
        }
            }

     执行结果

  • 相关阅读:
    Delphi中Chrome Chromium、Cef3学习笔记(五)
    java ->IO流_File类
    java ->递归
    java-> 分包分层
    java ->JDBC
    java -> 异常类与自定义异常
    java ->斗地主洗牌
    java -> map接口
    java ->Set接口
    java -> List接口
  • 原文地址:https://www.cnblogs.com/longesang/p/11190573.html
Copyright © 2020-2023  润新知