当前位置:网站首页>继承关系下构造方法的访问特点
继承关系下构造方法的访问特点
2022-08-09 22:01:00 【一个巨蟹座的程序猿.】
首先了解一下什么是继承:
继承的好处: 共性抽取,提高代码的复用性。
一旦发生继承关系: 子类可以使用父类的(非private修饰的)变量和方法(可继承)
子类也可以有自己独有的变量和方法
一、继承的语法:
public class 子类 extends 父类{
}
//遵循 is a ---> 子类是一个父类
//子类和父类是一个相对的概念
方式:1、编写父类
2、编写子类,继承父类(extends),写自己的属性和方法
二、什么叫构造方法:
构造方法也叫做构造器,它是一种比较特殊的方法,主要用于创建实例(也就是对象)的时候进行初始化操作。
语法:
修饰符 方法名(参数){
} //可以有参,也可以无参
如下图所示:
继承关系中,构造方法的访问特点:
1、子类构造方法当中有一个默认隐含的“super()”调用,所以一定是先调用的父类构造,后执行的子类构造。
2、子类构造可以通过super关键字来调用父类重载构造。
3、super的父类构造调用,必须是子类构造方法的第一个语句。不能一个子类构造调用多次super构造。
总结:子类必须调用父类构造方法,不写则赠送super();写了则用写的指定的super调用,super只能有一个,还必须是第一个。
三、super关键字:代表对当前对象的直接父类对象的默认引用
super必须出现在子类中,不是其他位置
可以访问父类的成员(属性 方法 构造方法)
注意访问权限的限制,如private修饰的成员无法访问
super.name 访问属性
super.print() 访问方法
super(name) 访问父类的构造方法
四、this关键字: this 的三种用法: 1. this.本类成员变量 2. this.本类成员方法 3. this(参数); //调用本类的其他构造方法
a.必须写在构造方法中 b.必须是第一个语句,this(参数)和super(参数)不能同时存在 c.写了this(参数),之后不再赠送super(); d.构造方法不能递归(你调用我,我调用你); e.this不写系统不会默认赠送,而super()会赠送
五、继承关系的初始化顺序:
(普通) 父类的属性→父类构造方法→子类的属性→子类的构造方法
(静态) 父类的静态属性→父类静态的代码块→子类的静态属性→子类的静态代码块→父类的属性→父类构造方法→子类的属性→子类的构造方法
边栏推荐
猜你喜欢
2.1.5 大纲显示问题
Domestic mobile phone manufacturers once fought for it, but now it is the first to collapse...
你真的了解乐观锁和悲观锁吗?
JSON 基本使用
金山云地震,震源在字节?
深度剖析 Apache EventMesh 云原生分布式事件驱动架构
Under the NVM node installation;The node environment variable configuration
leetcode:319. 灯泡开关
十步以内,用小程序快速生成App!
信息系统项目管理师---第十一章项目风险管理历年考题
随机推荐
Liver all night to write a thirty thousand - word all the commands the SQL database, function, speaks clearly explain operators, content is rich, proposal collection + 3 even high praise!
第 1 章 一大波数正在靠近——排序
阿里云架构师金云龙:基于云XR平台的视觉计算应用部署
NodeJS使用JWT
【EF】数据表全部字段更新与部分字段更新
R语言patchwork包将多个可视化结果组合起来、使用plot_annotation函数以及tag_level参数将组合图用大写字母进行顺序编码、为组合图的标签添加自定义前缀信息
Tencent continues to wield the "big knife" to reduce costs and increase efficiency, and free catering benefits for outsourced employees have been cut
leetcode:319. 灯泡开关
深度剖析 Apache EventMesh 云原生分布式事件驱动架构
OpenMLDB + Jupyter Notebook:快速搭建机器学习应用
迅为瑞芯微RK3399开发板设置Buildroot文件系统测试MYSQL允许远程访问
nvm下node安装;node环境变量配置
接口自动化测试实践指导(上):接口自动化需要做哪些准备工作
Kubernetes Service对象
18-GuliMall 压力测试与性能监控
【软考 系统架构设计师】案例分析⑤ 质量属性和架构评估
Jinshanyun earthquake, the epicenter is in bytes?
肝通宵写了三万字把SQL数据库的所有命令,函数,运算符讲得明明白白讲解,内容实在丰富,建议收藏+三连好评!
Chatting embarrassing scenes, have you encountered it?Teach you to get the Doutu emoticon package with one click, and become a chat expert
基于ABP的AppUser对象扩展