JAVA_this与super区别(书籍+视频的详细总结)

本文解释了Java中构造器中this与super的使用规则,强调了子类构造器会自动调用父类构造器,以及如何显式指定参数。重点在于理解构造器的调用顺序和参数传递。
摘要由CSDN通过智能技术生成

在这里插入图片描述

细节:

*在构造器中this与super不能同时使用 因为两个在构造器中都必须放在首行
*在构造器中 this()和super()调用中参数必须一一对应 子类调用构造器 会主动调用父类的构造器

这是因为在 Java 中,子类的构造器在执行时,会先调用父类的构造器,以确保父类的初始化工作完成。
如果子类的构造器显式地调用了父类的构造器,则会使用 super() 来实现这一调用。如果父类没有无参构造器,或者需要调用父类的其他构造器,可以使用 super(…) 来指定调用父类的特定构造器。


```java
public class Parent {
    public Parent() {
        System.out.println("Parent constructor");
    }
    
    public Parent(int value) {
        System.out.println("Parent constructor with value: " + value);
    }
}

public class Child extends Parent {
    public Child() {
        // 调用父类的无参构造器
        //super(); 自动调用
        System.out.println("Child constructor");
    }
    
    public Child(int value) {
        // 调用父类的有参构造器
        super(value);
        System.out.println("Child constructor with value: " + value);
    }
}

*this 永远是表示从当前对象开始 super就是跳过当前对象 从父类开始 直到访问成功才结束 私有类要通过公开方法才能访问

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值