美文网首页
java中的构造器

java中的构造器

作者: 老板司机 | 来源:发表于2020-03-03 07:52 被阅读0次

构造器是什么

1.构造器,也称构造方法、构造函数。作用是构造出来一个类的实例,确保对象得到初始化。

2.构造器的格式: 权限修饰符 类名(无参/有参){}。

3.根据有无参数,可分为无参构造 和有参构造。

构造器的特性

1.与一般方法名不同的是,构造方法名必须和类名保持一致,并且没有返回值。

2.Java编译器会自动创建无参构造函数,因此在类中,无参构造即使没有,我们也可省略不写。实例化对象时无需赋值。

3.倘若类中已存在有参构造函数,则编译器不再提供默认无参构造。实例化对象时需赋值,不然报错。

4.当类实例化一个对象时会自动调用构造方法。

补充#

如果你创造了一个带有参数的构造方法,那么无参的构造方法必须显式的写出来,否则会编译失败。这句话该如何理解?

这句话其实有点不妥,应该这么理解:每个类至少要有一个构造函数。如果写了一个有参构造,而没有写无参构造,也是可以的。不过,当你尝试通过一个无参构造来new对象时,编译器会报错。因为找不到这个无参的构造函数。也就是说,当一个类你没有写构造函数时,编译器会自动帮你创建一个无参构造。反之,若是写了有参构造,却想通过无参构造new对象,那么就需要将此无参构造写出来。

java中,子类为什么会自动继承父类的无参构造方法?

其实这句话本身就是错误的。因为构造函数不能继承,只能被调用。

 正确的说法应该是,Java中子类会自动调用父类的无参构造方法。

那么,子类为什么会自动调用父类的无参构造方法呢?因为子类继承父类,会继承到父类中的数据,所以必须要看父类是如何对自己的数据进行初始化的。

所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程。

子类在继承父类时,如果没有相同的带参构造方法,那么他就需要在其构造方法中,明确的通过super()调用父类的带参构造方法,否则构造不出父类,从而也构造不出他自己了。如果我们在父类中写个不带参数的构造方法,就可以不用实现父类的带参构造方法了。

相关文章

  • 10.29

    Java 中的构造器链是什么?当你从一个构造器中调用另一个构造器,就是Java 中的构造器链。这种情况只在重载了类...

  • 第二章 Java与Kotlin的写法比较

    3 Java与Kotlin的写法比较 3.1 构造器、变量、常量和静态数据 3.1.1 构造函数 java中的构造...

  • Java中的构造器

    1.功能上不一样。构造器是为了创建一个类的实例。也只有在创建一个对象的时候才会调用。JAVA j=new JAVA...

  • java中的构造器

    构造器是什么 1.构造器,也称构造方法、构造函数。作用是构造出来一个类的实例,确保对象得到初始化。 2.构造器的格...

  • 构造器

    所有的Java对象都是在堆中构造的 没有编写构造器,系统会默认提供一个无参数构造器,这个构造器将所有的成员变量设置...

  • 《 Java 编程思想》CH05 初始化与清理

    《 Java 编程思想》CH05 初始化与清理 用构造器确保初始化 在 Java 中,通过提供构造器,类的设计者可...

  • Java编程思想--第5章 初始化与清理

    5.1 用构造器确保初始化 Java中构造器采用与类名相同的名字,首字母必须大写。不接受任何参数的构造器叫做无参构...

  • Java深入学习(一)——构造器创建对象

    1.构造器是创建对象的重要途径 问题:构造器是创建Java对象的途径,是不是说构造器完全负责创建Java对象? 答...

  • java中 构造器就是构造方法?

    是的 但是在Java里并没有构造方法这一名词 这一名词是在C++以往的外文书籍中直译过来的 而且构造器这词的词义是...

  • Java构造器就是这么简单

    前言 理解构造器之前,首先我们需要了解Java中为什么要引入构造器,以及构造器的作用。 在很久之前,程序员们编写C...

网友评论

      本文标题:java中的构造器

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