zoukankan      html  css  js  c++  java
  • 《初始化块:普通初始化块、静态初始化块(类初始化块)》

     1 /*
     2 初始化块:普通初始化块、静态初始化块(类初始化块)
     3 
     4 下面程序创建了三个类:Root,Mid和Leaf,
     5 者三个类都提供了静态初始化块和普通初始化块,
     6 而且Mid类里还是用this调用重载构造区,而
     7 Leaf使用super显示调用父类指定的构造器
     8 */
     9 class Root
    10 {
    11     static{
    12         System.out.println("Root的静态初始化块");
    13     }
    14 
    15     {
    16         System.out.println("Root的普通初始化块");
    17     }
    18     public Root()
    19     {
    20         System.out.println("Root的无参数的构造器");
    21     }
    22 }
    23 
    24 class Mid extends Root
    25 {
    26     static{
    27         System.out.println("Mid的静态初始化块");
    28     }
    29 
    30     {
    31         System.out.println("Mid的普通初始化块");
    32     }
    33     public Mid()
    34     {
    35         System.out.println("Mid的无参数的构造器");
    36     }
    37     public Mid(String msg)
    38     {
    39         //通过this调用同一类中重载的构造器
    40         this();
    41         System.out.println("Mid的带参数的构造器,其参数值是:"+msg);
    42     }
    43 }
    44 
    45 class Leaf extends Mid
    46 {
    47     static{
    48         System.out.println("Leaf的静态初始化块");
    49     }
    50 
    51     {
    52         System.out.println("Leaf的普通初始化块");
    53     }
    54     
    55     public Leaf()
    56     {
    57         //通过super调用父类中有一个字符串参数的构造器
    58         super("疯狂Java讲义");
    59         System.out.println("执行Leaf的构造器");
    60     }
    61 }
    62 
    63 class Test
    64 {
    65     public static void main(String[] args) 
    66     {
    67         new Leaf();
    68         new Leaf();
    69     }
    70 }
    71 /*
    72 运行如下:(好好理解理解)
    73 ---------- 运行 ----------
    74 Root的静态初始化块
    75 Mid的静态初始化块
    76 Leaf的静态初始化块
    77 Root的普通初始化块
    78 Root的无参数的构造器
    79 Mid的普通初始化块
    80 Mid的无参数的构造器
    81 Mid的带参数的构造器,其参数值是:疯狂Java讲义
    82 Leaf的普通初始化块
    83 执行Leaf的构造器
    84 Root的普通初始化块
    85 Root的无参数的构造器
    86 Mid的普通初始化块
    87 Mid的无参数的构造器
    88 Mid的带参数的构造器,其参数值是:疯狂Java讲义
    89 Leaf的普通初始化块
    90 执行Leaf的构造器
    91 
    92 输出完成 (耗时 0 秒) - 正常终止
    93 */
  • 相关阅读:
    关于研发核心团队建设的一些思考
    无法打开物理文件xxx.mdf操作系统错误 5:“5(拒绝访问。)” (Microsoft SQL Server,错误: 5120)的解决方法
    自适应网页设计(Responsive Web Design)
    css浮动与绝对定位小记
    WEB进度条控件
    GitHub上整理的一些工具
    雾里看花般的迷茫--货运APP
    揭秘史上最完美一步到位的搭建Andoriod开发环境
    我是如何在SQLServer中处理每天四亿三千万记录的
    货运APP产品魔力=卓越功能×情感诉求
  • 原文地址:https://www.cnblogs.com/sun-/p/5448290.html
Copyright © 2011-2022 走看看