当前位置:网站首页>10Super详解
10Super详解
2022-08-11 10:19:00 【陆俞蓉】
super-this
(面试笔试可能会刷到这两个的相关题)
super注意点
- super是调用父类的构造方法,必须在构造方法的第一个
- super必须只能出现在子类的方法或者构造方法中
- super和this不能同时调用构造方法(因为这两个都必须在第一行,同时出现就报错)
vs this:
代表的对象不同
this的代表对象是本身调用者这个对象
super代表父类对象的引用
前提不同
this在没有继承的情况也可以使用
super只能在继承条件下使用
构造方法
this调用本类的构造
super调用父类的构造
来点代码看看
分别调用子类、父类——this/super
注意看现在我们有三个name
运行Application之后
子类调用父类的方法

- 如果你想知道在Student类的test01中的print()调用的到底是子类还是父类的方法,可以按住ctrl点击print()就会跳到调用的相应方法

生成无参构造器



生成有参构造器

关于super/this的调用
run主函数之后
(有个小注意。如果显式定义了super(),这个super()语句也要放在前面,否则报错)
——即调用父类的构造器,必须要在子类的第一行
小注意
报错:this()必须是第一个参数
但是把this()放前面后依旧报错,提示super()必须是第一个参数
所以我们一般不显式定义super()
写了有参,无参构造就没了
我们在讲封装的时候也说了,一个类无论你怎么写,只要你写了有参构造,一般是先把无参构造写上
子类继承父类——所以在子类中也无法去写无参构造

当父类没有无参构造时,在子类中显式定义super()调用父类的有参:

当父类没有无参构造时,在子类中不写super(),默认隐式定义super()调用父类的无参:

注意
(1)私有的东西无法被继承(运用super也无法调用)
边栏推荐
- [Building a 2D rasterized map using SLAM technology]
- B端产品需求分析与优先级判断
- Simple strokes on the Internet
- 网络模型(U-net,U-net++, U-net+++)
- 大家有遇到这种错吗?flink-sql 写入 clickhouse
- HDRP shader gets pixel depth value and normal information
- MySQL表sql语句增删查改_查询
- 错误代码: 1118 - Row size too large (> 8126). Changing some columns to TEXT or BLOB may help. In current
- 【Mysql系列】04_事务
- 验证拦截器的执行流程
猜你喜欢

Primavera P6 Professional 21.12 Login exception case sharing

How to improve the efficiency of telecommuting during the current epidemic, sharing telecommuting tools

The crawler is encapsulated into an api

Typora和基本的Markdown语法

卷积神经网络梯度消失,神经网络中梯度的概念

【应用SLAM技术建立二维栅格化地图】

HDRP shader to get shadows (Custom Pass)

Primavera P6 Professional 21.12 登录异常案例分享

Simple implementation of a high-performance clone of Redis using .NET (seven-end)

1.TCP/IP基础知识
随机推荐
使用.NET简单实现一个Redis的高性能克隆版(七-完结)
HDRP shader to get shadows (Custom Pass)
爬虫封装成api
漫画手绘之临摹篇
服务器和客户端的简单交互
神经网络参数如何确定的,神经网络参数个数计算
SQL语句
Simple implementation of a high-performance clone of Redis using .NET (seven-end)
OAK-FFC Series Product Getting Started Guide
idea plugin autofill setter
B端产品需求分析与优先级判断
疫情当前,如何提高远程办公的效率,远程办公工具分享
Primavera Unifier 自定义报表制作及打印分享
ES6: Expansion of Numerical Values
Database indexes and their underlying data structures
Array, string, date notes [Blue Bridge Cup]
全新FIDE 编译简单评测
Unity shader test execution time
你觉得程序员是一个需要天赋的职业吗?
神经痛分类图片大全,神经病理性疼痛分类