Java super关键字详解

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

一.super关键字作用

1:主要存在于子类方法中,用于指向子类对象中父类对象。

2:访问父类的属性

3:访问父类的函数

4:访问父类的构造函数

二.super注意的地方

 

this和super很像,this指向的是当前对象的调用,super指向的是当前调用对象的父类。类加载完毕,创建对象,父类的构造方法会被调用(默认自动无参),然后执行子类相应构造创建了一个子类对象,该子类对象还包含了一个父类对象。该父类对象在子类对象内部。this super只能在有对象的前提下使用,不能在静态上下文使用。

三.super关键字的使用

1.子类的构造函数默认第一行会默认调用父类无参的构造函数,隐式语句

super();

Son(int y) {

//super();隐式语句

this.y = y + x;

System.out.println("这是子类的有参构造");

}

2.子类显式调用父类构造函数

在子类构造函数第一行通过super关键字调用父类任何构造函数。如果显式调用父类构造函数,编译器自动添加的调用父类无参数的构造就消失。构造函数间的调用只能放在第一行,只能调用一次。super()和this()不能同时存在构造函数第一行。

Son(int y) {

super(y);// 子类显式调用父类构造函数

this.y = y + x;

System.out.println("这是子类的有参构造");

}

四.super思考

如果开发者自定义了一个类,没有显示的进行类的继承,那么该类中成员函数是否可以使用super关健健字?可以使用,继承了Object类,Object类是所有类的父类。

class Demo7 {

public void print(){

System.out.println(super.toString());

}

public static void main(String[] args){

new Demo7().print();

System.out.println();

}

}

 

javasuper()方法的作用是什么 【2】这里的 super() 方法指向的是 RuntimeException 中的构造方法,而 RuntimeException 中对应的构造方法中的 super() 方法又是指向 Exception 中的构造方法,而 Exception 中的对应的构造方法中的 super() 方法指向的是 Throwable 中的构造方法。3、如果子不显式地调用super()方法,Java编译器会默认在子构造方法的第一条语句中插入super()方法来调用父的无参构造方法。1、super()方法的。 阅读详情

相关推荐

java super()方法的作用

5.3. 编译器会自动插入super()调用:如果子的构造方法没有显式地调用super()方法,编译器会在子构造方法的第一行自动插入super()语句,以调用父的无参构造方法。5.1. super()方法必须在子的构造方法的第一行调用:在子的构造方法中,如果需要调用父的构造方法,必须使用super()方法,并且该语句必须放在子构造方法的第一行。子构造方法重载的作用是可以根据不同的情况选择不同的构造方法来初始化子自己的成员变量,并调用父的构造方法来初始化父的成员变量和属性。

hitpter的专栏 5262

Javasuper详解

目录 Javasuper详解 super的作用: 1. 通过super可以访问父的构造方法 2. 通过super可以访问父的属性(非私有) 3. 通过super可以访问父的方法(非私有的方法) Javasuper详解 在说super之前先说一下Java中的继承,继承是Java中面向对象编程技术的重要基石,因为它允许创建分等级层次的。继承就是子继承父的行为和特征,就是方法和属性。私有的属性和方法子是能继承的,但是子无法直接调用,调用父的私有属性需...

weixin_44722237的博客 1万+

Java super的作用

super的作用: 1. 通过super可以访问父的构造方法 调用父构造方法的代码必须放在子构造方法的第一行,不这样执行会报错(规定的格式),用super调用属性时不用遵守。 当父没有无参构造方法时,不能直接使用super();调用父构造方法 2. 通过super可以访问父的属性(非私有) 3. 通过super可以访问父的方法(非私有的方法) ...

qq_41742016的博客 8187

java语言之super关键字详解

super关键字详解super在JVM中的内存图模型,解释IDEA与eclipse使用快捷键生成构造方法时第一行出现super()是为什么

ocean&21的博客 1万+

Java中的super关键字详解

super通过这篇博客,我们深入探讨了Javasuper关键字的各种用法和原理,包括访问父成员变量、调用父方法、调用父构造函数以及在多态中的应用。理解super关键字不仅有助于编写清晰简洁的代码,还能加深对继承和多态的理解。希望通过这篇详细的讲解,能够帮助初学者全面掌握super关键字,并在实际编程中得心应手地运用它。如果你对super关键字还有其他疑问或有更多的使用技巧,欢迎在评论区分享和讨论。记住,编程不仅仅是写代码,更是不断学习和交流的过程。

weixin_53840353的博客 9039

Javasuper关键字详解

Java的基础学习中,慢慢接触到许多陌生的关键字,今天来讲一下我所认识的super关键字 它的使用场景为:有继承在⭐(必须在继承下才能使用super) 一.super调用(父)构造方法 看下面这段代码 class Person{ public Person(){ System.out.println("1.Person的构造方法"); } } cl...

eternal_yy 5007

java关键字super指什么_java 关键字super详解及用法

java 关键字super详解一、super关键字JAVA中使用super来引用父的成分,用this来引用当前对象,如果一个从另外一个继承,我们new这个子的实例对象的时候,这个子对象里面会有一个父对象。怎么去引用里面的父对象呢?使用super来引用,this指的是当前对象的引用,super是当前对象里面的父对象的引用。1.1.super关键字测试package cn.galc....

weixin_35824356的博客 1052

Java 中的 super 关键字详解

super关键字Java 的继承机制中扮演着重要的角色,它允许子访问和调用父的成员,从而实现代码的复用和扩展。通过合理使用super,可以编写出更加清晰、健壮的面向对象程序。希望本文能够帮助你理解 Javasuper关键字的基本概念和用法。如果你有任何疑问或建议,欢迎在评论区留言讨论!文章涵盖了super关键字的基本概念、三种主要用法(访问父属性、调用父方法、调用父构造函数)、与this的区别以及使用时的注意事项,适合 Java 初学者入门学习。

吾为热爱计科,致力于知识分享的践行者,此博客是我在这条道路上留下的足迹。 1787

java基础之this、super关键字详解

java基础之this、super详解一、this关键字二、super关键字 一、this关键字 this关键字相信大家都很熟悉,在实际使用中主要有以下三个用途: 1.调用中的成员变量; 2.调用中的其他方法; 3.构造方法中调用的其他构造方法(注意只能调用一个且必须位于首行)。 当我们平时开发中经常使用this之后,你有没有想过this是从哪里来的?this的数据型是什么?为什么在static方法和static块中无法使用this? 接下来,我将对这些问题一个一个进行剖析,本节主要通过class来

ransijing的博客 2081

Java基础super关键字详解

1.super能出现在实例方法和构造方法中。super的语法是:“super.”,“super()”super不能使用在静态方法中super. 大部分情况下是可以省略的2.super();表示通过子的构造方法调用父的构造方法模拟现实世界中的这种场景:要想有儿子,需要先有父亲2.重要结论:既没有this()又没有super()的话,默认会有一个super();表示通过当前子的构造方法调用父的无参构造方法, 所以必须保证父的无参数构造方法是存在的3.注意。...

qq_46096136的博客 1839

Javasuper关键字详解

super关键字详解 这里分享下一javasuper关键字的相关知识。 super关键字: super关键字代表了父空间的引用。 super关键字的作用: 1. 子父存在同名的成员时,在子中默认是访问子的成员,可以通过super关键字指定访问父的成员。 2. 创建子对象时,默认会先调用父无参的构造方法,可以通过super关键字指定调用父带参的构造方法。 super关键字调用父构造方法要注意的事项: 1. 如果在子的构造方法上没有指定调用父的构造方法,那么java编译器会在子的构造方

qq_49529322的博客 428

详解javasuper关键字的作用

在面向对象编程中,继承是一个常见的概念。当一个继承自另一个时,它会继承父的属性和方法,并可以在此基础上进行扩展。在Java中,使用关键字super来调用父的构造方法、成员变量和方法。本文将详细介绍super()方法在Java中的用法和注意事项。2. 调用父的构造方法子的构造方法默...

lxw1844912514的博客 723
上一篇: Hadoop 常见问题及解决
下一篇: Java内部类
Yeung先森
博客等级 码龄11年 5粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值