Java面向对象之继承

Java允许类之间的继承关系

目的:实现代码的重用,避免代码的重复

 形式:通过extends关键字来实现继承

class Son extends Father{}

          子类                 父类

其中父类包括所有子类所共有的属性和方法

子类除了父类能继承的成员,还包括自己特有的属性和方法

特点:单一继承,一个类只能继承一个父类,但一个父类可以有多个子类

特性:传递性,父传子,子传孙...


 注意:创建子类对象时,构造子类之前必须先构造父类

即,在子类的构造方法中存在默认的super()来调用父类构造

若不写super()方法,则编译器自动添加一个super()

若写了,则编译器不再添加,这时若有重载的构造方法也需要自己写


super和this

super:指代当前对象的父类对象

用法:super.成员变量名----访问父类成员方法

         super.方法名()--------调用父类方法

         super()------------------调用构造方法

 this:指代当前对象

用法:this.成员变量名-----访问成员变量

         this.方法名()-------调用方法

         this()--------------调用构造方法

注意:super和this在一个方法中不能共存


方法和类的主要作用就是封装一段代码,降低代码出错的可能性,便于维护

当内部实现细节改变时,只要保证对外的功能定义不变,则其他模块代码便无需更改
public class A {
    public A(int i){

    }
}

class B extends A {
    public B(){
//       super();//这时默认没有,父类没有无参构造,须自己写
	 super(1);//调用父类有参构造
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值