java_继承

本文探讨了Java中的继承概念,解释了如何提高代码复用性和维护性,同时指出这可能削弱子类的独立性。内容包括子类如何访问父类的构造器、成员变量和方法,以及构造器的调用规则。示例代码展示了子类如何通过`super`关键字调用父类的构造器和成员。此外,文章还强调了Java中单继承的特性以及所有类默认继承自`Object`类。
摘要由CSDN通过智能技术生成

package com.hb2.继承2;
//父类、也被成为基类、超类
//子类、也被成为派生类

//继承:提高了代码复用性,提高了代码维护性,但削弱子类的独立性
public class Demo {
    public static void main(String[] args) {
        Zi zi = new Zi();
        zi.show();

/*
    子类中所有的构造方法,默认会先访问父类无构造,若父类无无参构造,
    需写上super(数据),调用父类有参构造

    因为子类会继承父类中的数据,还可能会使用父类的数据。所以,
    子类初始化前,一定要先完成父类数据的初始化
    每一个子类构造方法的第一套语句默认是:super()
 */
//子类可以有父类的内容
//子类也可以有自己特有的内容

//        this.成员变量 :访问本类成员变量
//          this(...) :访问本类构造方法
//          this.成员方法(...) :访问本来成员方法
//
    }
}

//在子类方法中访问一个变量
// 1、子类局部范围内找
// 2、子类成员范围找
// 3、父类成员范围找
// 4、如果都没有就报错(不考虑父亲的父亲)
//
//继承
//子类继承了父类,就会有父类的全部方法
//在java中,所有的类,都默认继承object类
//java中,只能有单继承,没有多继承
//一个儿子只能有一个爸爸,一个爸爸能有多个儿子
//私有的东西无法被继承
public class someone extends person{

    //ctrl+h 显示继承关系
    String name= "dashabibi";
    public void text(String name){
        System.out.println(name);// 输入的值
        System.out.println(this.name);//this 调用此类name
        System.out.println(super.name);//super 调用父类name
    }

}

父类:

子类

输出:(隐藏调用了父类的无参构造器!)

若将父类构造器写在前,会出现错误,父类构造器要在前

调用构造器,要么调用父类构造器,要么调用子类构造器,必须在第一行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值