美文网首页
java-构造函数

java-构造函数

作者: C77lifes | 来源:发表于2018-04-10 18:06 被阅读0次

(1)一个类如果不声明构造函数会生成一个默认的无参构造函数.如果声明了构造函数(无论有参还是无参),就不会生成默认的构造函数.一个类可以有一个或者多个构造函数,包括有参构造和无参构造.所以一般一个类的构造函数有三种情况:无参 | 无参+有参 | 有参

(2) 在继承关系中,子类的所有构造函数(包括无参构造函数(默认构造函数),有参构造函数等),如果不显式声明调用哪种super,那么都会默认调用super(),即都会默认调用父类的无参构造函数(默认构造函数)。而,如果父类此时没有无参构造函数存在的话,子类或者子类的构造函数就会报错.提示 Must explicitly invoke another constructor(必须显式的调用另一个构造参数).解决方法:1. 显式调用父类显式声明的构造函数之一 2. 在父类中增加无参构造函数。

(3) 在继承关系中,当使用new一个类时,程序的执行顺序为:首先执行父类的构造函数方法,再执行自身的构造函数方法,这个执行顺序不可更改,否则报错或不能运行。在深度继承关系中,即当存在C继承B,B继承A,或者更多层继承时,首先执行最上层的构造函数,再依次顺着继承链传递下去,一直到创建对象的那个类。例如:我们声明C对象时,调用的是C的构造函数c,构造函数c调用的是父类B的构造函数b,构造函数b调用的是父类A中的构造函数a,那么执行结果就是:a => b => c 。

参考地址:https://blog.csdn.net/qiumengchen12/article/details/44829907

相关文章

  • java-构造函数

    (1)一个类如果不声明构造函数会生成一个默认的无参构造函数.如果声明了构造函数(无论有参还是无参),就不会生成默认...

  • java-构造函数

    构造函数   创建对象,兼职成员对象属性就行赋值。分类:  无参构造函数(默认构造函数)   带参数构造函数 注意...

  • Java-静态代码块,构造代码块,构造函数

    静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行...

  • Flutter 6种构造函数详解

    Flutter有生成构造函数、默认构造函数、命名构造函数、重定向构造函数、常量构造函数、工厂构造函数 一.生成构造...

  • C# 构造函数总结

    构造函数 构造函数分为:实例构造函数,静态构造函数,私有构造函数。 实例构造函数 1、构造函数的名字与类名相同。 ...

  • Javascript 基础之原型链

    构造函数、构造函数实例、构造函数原型 function Student (name) { } - 这是构造函数va...

  • Java-静态代码块,构造代码块,构造函数【转载】

    ----------------------------------------------用于加深自己的印象了,...

  • Swift基础语法-类的构造函数

    本节知识点 构造函数的介绍 构造函数的基本使用 自定义构造函数 属性与构造函数 1. 构造函数的介绍 构造函数类似...

  • C++:面向对象基础

    构造函数 C++中有三种构造函数:默认构造函数,有参构造函数,拷贝构造函数 类对象的初始化 括号法//默认构造函数...

  • 构造函数

    构造函数分为: 1.实例构造函数 2.私有构造函数 3.静态构造函数 私有构造函数 私有构造函数是一种特殊的实例构...

网友评论

      本文标题:java-构造函数

      本文链接:https://www.haomeiwen.com/subject/kfcnhftx.html