面试必备 什么是构造函数

               面试笔试题:
        1.下列关于构造方法的叙述中,错误的是()
        A. Java 语言规定构造方法名与类名必须相同
        B. Java 语言规定构造方法没有返回值,但不用 void 声明
        C. Java 语言规定构造方法不可以重载
        D.Java 语言规定构造方法只能通过 new 自动调用

         2.下列说法中,正确的是()
        A. class 中的 constructor 不可省略
        B.constructor 必须与 class同名,但方法不能与 class同名
        C. constructor 在一个对象被 new 时执行
        D.一个 class 只能定义一个 constructor

        

小伙伴们可以在下方评论区留下你的答案,大家一起讨论一起进步!!!

评论区有对本题的详细说明哦!!!

        构造函数是一种特殊的函数,用来在对象实例化时初始化对象的成员变量。在 Java 语言
中,构造函数具有以下特点
        1)构造函数必须与类的名字相同,并且不能有返回值(返回值也不能为 void)。
        2)每个类可以有多个构造函数。当开发人员没有提供构造函数时,编译器在把源代码编
译成字节码的过程中会提供一个没有参数默认的构造函数,但该构造函数不会执行任何代码。
如果开发人员提供了构造函数,那么编译器就不会再创建默认的构造函数了。
        3)构造函数可以有0 个、1 个或 1 个以上的参数。
        4)构造函数总是伴随着 new 操作一起调用,且不能由程序的编写者直接调用,必须要由
系统调用。构造函数在对象实例化时会被自动调用,且只运行一次;而普通的方法是在程序执
行到它时被调用,且可以被该对象调用多次。
        5)构造函数的主要作用是完成对象的初始化工作。
        6)构造函数不能被继承,因此,它不能被覆盖,但是构造函数能够被重载,可以使用不
同的参数个数或参数类型来定义多个构造函数。
        7)子类可以通过 super 关键字来显式地调用父类的构造函数,当父类没有提供无参数的
构造函数时,子类的构造函数中必须显式地调用父类的构造函数。如果父类提供了无参数的构
造函数,此时子类的构造函数就可以不显式地调用父类的构造函数,在这种情况下编译器会默
认调用父类提供的无参数的构造函数。当有父类时,在实例化对象时会先执行父类的构造函
数,然后执行子类的构造函数。
        8)当父类和子类都没有定义构造函数时,编译器会为父类生成一个默认的无参数的构造
函数,给子类也生成一个默认的无参数的构造函数。此外,默认构造器的修饰符只跟当前类的
修饰符有关(例如,如果一个类被定义为 public,那么它的构造函数也是 public)。
        引申:普通方法是否可以与构造函数有相同的方法名?

 运行结果为:

construct
call Test

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纳什1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值