Java构造详解

来源:互联网 发布:网络安全管理指导思想 编辑:程序博客网 时间:2024/06/06 02:00
Java构造详解
本文就Java构造加载做以下描述:java中,构造不可继承,但构造可通过隐式或者显式调用。隐式默认调用父类的无参构造,省略super关键字;显示调用时,在子类的构造方法的第一行通过super关键字初始化父类实例,必须放在第一行,否则在初始化子类的时候并没有完成对父类的初始化,引发编译器保存。
下文用一下简单的类说明对应关系
public class B{
   public B(){
   //无参构造是默认的,如果提供有参构造时,则无参构造不存在,若需使用,需显式说明
   System.out.println("子类无参数构造执行");
   }
   pulic B(String s){
    System.out.println("子类有参构造执行");
   }
}
public class A extends B{
   public A(){
    //此处默认省略了super();
  System.out.println("父类无参数构造执行");
   }

   public A(String s){
   //此处不书写时,默认调用父亲的无参构造
  System.out.println("父类有参数构造执行");
  }
}

 测试:
        1.实例化A无参数构造时:输出结果如下:
         父类无参数构造执行
         子类无参数构造执行


        2.实例化A有参数构造时:输出结果如下:
         父类无参数构造执行
          子类有参数构造执行

  下文详解:静态代码块的加载方式


0 0
原创粉丝点击