面向对象编程之构造器的细节

面向对象编程之构造器的细节



构造函数基本上定义了两个规则。分别如下:

构造函数名必须与其类名称相同
构造函数必须没有显式返回类型

如果没有定义构造器,则会默认一个无参构造器。
默认构造函数的目的是根据类型为对象提供默认值,如:0,null等。

如果自定义了有参构造器,则会覆盖默认构造器。即默认构造器就不存在了,如果还想使用无参构造器,则必须显示的写出来!

与普通方法一样,构造器也支持重载。一个对象中是可以支持同时定义多个构造器,通过不同的参数列表来实现重载。经常看到代码中new一个对象时,有时传入参数,有时又可以不用传。比如:new People()跟new People(“张三”),这里就是重载了。

子类构造器会默认调用父类无参构造器,如果父类没有无参构造器,或者父类的无参构造器被有参构造器覆盖了,则必须在子类构造器的第一行通过 super关键字指定调用父类的哪个构造器

想用父类的哪个构造器,就去声明哪个

  • 例子
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
所以构造器的执行顺序是从父类开始的。先执行父类构造器中的程序,再执行本子类构造器中的程序。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值