子类初始化与子类构造器中的super this

this和super关键字的使用和说明 this 和 super 关键字的使用 阅读详情

子类的初始化

用此类来记住子类的初始化和super与this的灵活运用!

  • 子类的实例化过程
    结论:
    子类的所有的构造函数,默认都会访问父类中空参数的构造函数。
    因为子类每一个构造函数内的第一行都有一句隐式super();
    当父类中没有空参数的构造函数时,子类必须手动通过super语句形式来指定要访问父类中的构造函数。
    当然:子类的构造函数第一行也可以手动指定this语句来访问本类中的构造函数。子类中至少会有一个构造函数会访问父类中的构造函数。

    为什么子类一定要访问父类中的构造函数?

    因为父类中的数据子类可以直接获取。所以子类对象在建立时,需要先查看父类是如何对这些数据进行初始化的。
    所以父类在对象初始化时,要先访问父类中的构造函数。*

package baseSome;

/**
 * @author 董
	 子类的实例化过程
	结论:
	子类的所有的构造函数,默认都会访问父类中空参数的构造函数。
	因为子类每一个构造函数内的第一行都有一句隐式super();
	当父类中没有空参数的构造函数时,子类必须手动通过super语句形式来指定要访问父类中的构造函数。
	当然:子类的构造函数第一行也可以手动指定this语句来访问本类中的构造函数。
	子类中至少会有一个构造函数会访问父类中的构造函数。
	
	为什么子类一定要访问父类中的构造函数?

	因为父类中的数据子类可以直接获取。所以子类对象在建立时,需要先查看父类是如何对这些数据进行初始化的。
	所以父类在对象初始化时,要先访问父类中的构造函数。
 */
public class ExtendTestDemo {
	public static void main(String[] args) {
		Zi zi = new Zi(2);
	}
}

class Fu{
	
	Fu(String name){
		System.out.println("我是fu" + "---"+name);
	}
}

class Zi extends Fu{
	Zi(){
		super("dzy");
		System.out.println("-------------无参数构造器");
	}
	Zi(int x){
		//this();
		super("dzy");
		System.out.println("-------------第二个构造器"+x);
	}
}
Java super关键字详解:继承体系中的父类导航与核心用法 在面向对象编程中,继承是实现代码复用和扩展的核心机制。其原理在于子类能够自动获取父类的属性和方法,形成层次化的类结构。这一机制的技术价值在于构建可维护、可扩展的软件架构,广泛应用于框架设计、业务建模等场景。当子类需要访问或调用被覆盖的父类成员时,就需要明确指向父类的引用,这正是Java中super关键字的核心作用。它作为子类中访问父类成员的导航器,主要用于调用被覆盖的方法、访问被隐藏的字段以及在构造器中初始化父类部分,是理解和应用方法重写、构造器链等高级特性的基础。掌握super的用法,对于编写健壮的、符合 阅读详情

相关推荐

双轴按键摇杆模块原理与嵌入式驱动实战

双轴按键摇杆是一种融合模拟量(X/Y轴)与数字量(Z轴按键)的复合型人机交互传感器,其本质基于电位器分压原理与机械开关通断特性。通过ADC采集连续电压信号并结合数字IO检测按键状态,可实现高鲁棒性的二维运动感知与触发控制。该方案技术门槛低、成本可控、兼容性强,广泛应用于智能小车、DIY游戏手柄、工业HMI及教育开发板等嵌入式场景。文中深入解析电位器线性度、KEY引脚开漏特性、ADC参考电压稳定性及软件消抖状态机等关键工程要素,为基于Arduino、STM32或ESP32平台的快速集成提供可复用的技术路径。

weixin_30995917的博客 82

关于子类构造方法调用super();

首先声明 java的规定:子类继承父类,子类的构造方法必须调用super()即父类的构造方法,而且必须放在构造方法的第一行。 子类构造方法第一行都有调用父类无参的构造方法,如果你不显示地写出了,系统会自己加上;如果你的父类没有构造方法,那么系统也会默认给父类加上无参的构造方法,但是如果你的父类重载了一个或多个构造方法,系统将不再默认加上无参的构造方法。 结论:所以当你的父类有重载的构造方法,而没有写无参的构造方法,这时候子类构造方法super();找不到父类的无参构造方法,就会报错。 解决:只需要加

weixin_51130521的博客 3682

获取上传至DMS服务器上文件的URL

如果需要失效时间延长会设置URL永久有效, 可以去修改函数SCMS_URL_GENERATE的参数DURATION 或EXPIRATION ,DURATION最大时间是999999,若需要永久有效,则需要设置EXPIRATION的时间,这时系统会忽略DURATION的参数,生成URL的时候 SCMS_URL_GENERATE会调用SCMS_URL_SIGN函数这是其中默认这是了URL的生效时间为两小时。

一只学习的渣渣 540

2022Java学习笔记三十四(面向对象加强进阶:子类构造器的特点,this、super使用总结)

2022Java学习笔记三十四(面向对象加强进阶:子类构造器的特点,this、super使用总结) 一、子类继承父类后构造器的特点 子类中所有的构造器默认都会先访问父类中无参构造器,再执行自己 原因: 1、子类在初始化的时候,有可能会使用到父类中的数据,如果父类没有完成初始化,子类将无法使用父类的数据 2、子类初始化之前,一定要调用父类构造器先完成父类数据空间初始化 子类构造器的第一行语句默认都是:super(),不写也是存在的 二、子类构造器访问父类有参构造器 super调用父类有参构造器的作用:初始

我要记录学习博客 491

【亲测有效】OpenClaw Gateway 出现 “(no output)“ 卡死问题完整解决指南:从手动重启到 systemd Watchdog 自动恢复

最近在使用 OpenClaw(自托管 AI 助手框架,前身 Clawdbot/Moltbot)时,遇到了一个非常常见的顽疾:TUI(终端界面)或 Telegram 等通道经常显示 "(no output)",消息发出去后机器人完全没反应,看起来像是卡死了。

hampeter的博客 8607

地理空间坐标系统-不同椭球基准间的坐标转换

基于同一个椭球基准,可以构建三类地理空间坐标系:大地球面坐标系、大地空间直角坐标系、大地投影坐标系。由于坐标原点和椭球长短半径等都相同,这三类坐标系之间可以通过无损的数学方法相互之间进行转换。那么现在问题来了,不同椭球基准(在全球范围来看存在成百上千的椭球基准)之间的坐标怎么转换?比如,北京54、西安80、国家2000,特别是在我国,现在主推国家2000坐标系,那么如何将历史的测绘成果(北京54和...

技术改变世界 8336

Java学习-super调用构造器,多态性,方法的重载与重写-1201

在子类构造器的首行,没有显示的声明super(形参列表)和this(形参列表),则默认调用的是父类中空参得构造器:super()。我们在类的构造器中,针对于super(形参列表)和this(形参列表)只能二选一,不能同时出现。我们可以在子类的构造器中显示的使用super(形参列表)的方式,调用父类中声明的指定的构造器。在类的多个构造器中,至少有一个类得构造器中使用了super(形参列表)。调用父类中的构造器。super(形参列表)的使用,必须声明在子类构造器的首行。三 方法的重载与重写。

qq_43699601的博客 519

(超详细)互补格雷码+相移码求解包裹相位(Python实现)

记录实现“互补格雷码+相移码”求解包裹相位的编码过程。也可以叫它“5+4”法,5代表五幅格雷码图像,4代表四步相移法的四张正弦条纹图。

暴雨梨花博客 3万+

关于java中子类调用父类构造函数super();一些问题

超全知识: 关于java中子类调用父类构造函数super();

m0_64231944的博客 4136

C语言手写HTTPD网站服务器

零基础手写C语言http网站服务器,快速入门C/C++后端开发、服务器开发。

程序员Rock的博客 1万+

最新2026年《网络数据安全风险评估办法》条款解读

大型企业集团IT变革下的零信任安全体系建设方案(55页).pptx。以数据安全为核心的安全立体防御体系解决方案(41页).pptx。让数据安全合规地创造价值(15页 PPT).pptx。大型集团数据安全应急预案(57页).docx。数据安全治理与评估服务业务介绍.pptx。数据安全管理实践(17页).pptx。大数据安全架构设计方案.pptx。大数据安全规划总体方案.pptx。数据库安全综合治理方案.pptx。医疗数据安全建设方案.pptx。数据安全框架规划图.pptx。数据安全治理方案.pptx。

cdfunlove的博客 47

子类构造函数中super()方法的理解

先说说对构造函数的理解: 1,函数名于类名相同。 2,没有返回值。 3,没有return。 4,每个类都有一个默认无参的构造函数,初始化该类的时候,先走构造函数,用于初始化成员变量和方法。 5,一个类如果自定义了构造函数,则默认的无参构造函数没有了,如果需要无参的构造函数,必须手动添加。 再说说子类和父类关于super()方法的调用: 1,super(); 就是调用父类的构造函数。 ...

asdfghjklor的博客 7305

GeoXCP:可解释人工智能中空间解释的不确定性量化

GeoXCP: uncertainty quantification of spatial explanations in explainable AI提出基于保形预测(conformal prediction)的不确定性量化框架——地理空间解释保形预测(GeoXCP),将空间依赖纳入建模过程,生成具有校准不确定性估计的空间自适应解释。通过大量模拟实验和真实世界数据集验证,GeoXCP在不同地理空间场景中能提供可靠解释并有效量化不确定性,推动可解释地理空间机器学习的发展,帮助决策者评估模型驱动洞察的可信度。

May the Force be with you 242

react 定义组件时 super在做什么

在ES6的类中,每一个类都有一个contructor(构造器),当子类去继承父类的时候,父类的constructor需要执行一下,为子类去继承constructor中的一些东西,如果子类自己没有写constructor,默认的会生成一个constructor并且在其中就会执行父类的constructor,执行的方法就是super(),因为子类中的super就是父类的constructor 如果...

iiichigo的博客 400

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

java 构造 super_Java ——补充:构造方法 super()与构造方法 无参 有参构造方法 this()与构造方法...

参考文章:构造方法在new的时候自动执行。且只执行一次。new一次执行一次每个类都有构造方法,即使不写也有,编译时javac会自动检查类是否有构造方法,如果有,就执行,没有就自动添加一个如果父类有含参构造方法,则子类也必须添加含参构造方法如果父类没有含参构造方法,子类无需添加构造方法this在构造方法之间的应用super在构造方法中的应用首先要明白super关键字的作用:1、super是调用父类的...

weixin_42186387的博客 374

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

this和super的学习

this 1.this能出现在实例方法和构造方法中 2.this不能使用在静态方法中 3.this大部分情况下可以省略,除了区分局部变量和实例变量时 4.this只能出现在构造器/构造方法第一行 目的是代码复用 super 1.super能出现在实例方法和构造方法中 2.super不能使用在静态方法中 3.super大部分情况下可以省略(系统隐式自动补充在构造方法第一行),除了…待补充 4.super只能出现构造方法的第一行,通过当前的构造方法调用父类中的构造方法.当一个构造方法第一行既没有this也没有s

m0_46671240的博客 147

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

JAVA中的构造器

什么是构造器? 作用: 创建对象 初始化成员变量 创建对象的时候执行初始化 构造器中需要注意的地方: 构造器的名称必须与类名同名,包括大小写。 构造器没有返回值,但也不能写void,也不能写return。 构造器的参数:一般是初始化对象的前提条件。 用new调用!且对象一建立,构造器就运行且仅运行一次。一般方法可被调用多次。 类一定有构造器!这是真的,不需要质疑! 如果类没有声明(定义)任何的构造器,Java编译器会自动插入默认构造器! 默认构造是无参数,方法体是空的构造器,且默认

段远山 476

java标签的限制_java中的super限定

super的用法:(1)如果需要在子类中调用父类中被覆盖的实例方法,可以用super限定来调用父类中被覆盖的方法。当然,也可以调用从父类继承的实例变量。public void callOverridedMethod(){super.fly();//fly()是父类中被覆盖的方法}注:super限定用于限定该对象调用它从父类继承的实例变量或者方法,但是super不能出现在static修饰的方法中,因...

weixin_36110344的博客 229

Java构造器、this关键字、super关键字

Java构造器详解以及this、super关键字 一、构造器 (1)构造器用于初始化对象。 (2)构造器的调用是在new此类的对象时调用的,可返回一个初始化完成的对象。 (3)若一个类不写构造器,java会自动为该类提供一个无参构造器。 (4)构造器语法格式:   修饰符 构造器名(参数){}   ▶构造器修饰符一般是public;   ▶构造器名和类名相同;   ▶参数可以有多个; (5)代码示例: public class BigDog { private String name; pr

weixin_41033450的博客 235

java构造器小结

当创建一个个对象时,系统会该对象的属性默认初始化,基本类型属性的值为0(数值类型),false(布尔类型),把所有的引用类型设置为null.       构造器可以改变这种默认的初始化。       构造器的作用:是创建java对象的重要途径,是不是说构造器完全负责创建java对象?????                                 答:是创建java对象的

一个执着的程序员 6874

this(...)调用兄弟构造器代码解析及注意事项

this(...)调用兄弟构造器

Pretty_TokaiTeio的博客 316

JAVA三大特征之二继承(二)对于Super类的详解(重难点)

基于Idea的继承特性的Super类详解

m0_63248617的博客 512

java中构造方法的理解,super()与构造方法,无参,有参构造方法,this()与构造方法

一、为什么要引入构造方法。 当创建对象的时候需要对属性值初始化,构造方法,即对象创建时要执行的方法。 要求在实例化的同时,就指定好name,和age的值。这就要用到构造方法。又叫做构造器Constructor. 二、构造方法的定义格式 构造方法在new的时候自动执行。且只执行一次。new一次执行一次。 注意:每个类都有构造方法,即使不写也有,编译时javac会自动检查类是否有构造方法,如果有,就执行,...

m0_46107486的博客 2188

Java基础知识——继承中构造方法的访问特点、this和super使用总结

this:理解为一个变量,表示当前方法调用者的地址值;访问本类super:代表父类存储空间;访问父类。

m0_63872133的博客 321

java构造器

java构造器

m0_53277664的博客 867
上一篇: Java时间类LocalDate
下一篇: abstract抽象类与模板方法设计模式
JustToLearnAnGo
博客等级 码龄7年 0粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值