extends与implements的区别

extends、implements、abstract的区别

extends 继承

1.子类继承父类,继承类只能是单继承,即一个子类只能继承一个父类;但是可以多重继承,例如:即class A extends B{} classB extends C{}。
2.继承的父类不能是final的。
3.继承的父类是抽象类时,子类是也抽象类则直接继承,或者子类需要实现父类中的所有抽象方法
4.子类不能继承父类的private属性和方法
5.子类继承父类的方法时可以对父类的方法进行重写
注:这时候就需要注意重写的规则(参数个数、参数类型、返回类型和父类保持一致,同时子类重写方法的修饰符范围不能小于父类的修饰符)
6.继承接口可以是多继承,如果父亲是接口(interface)那么可以有多个父亲

implements 接口

1.一个类可以实现多个接口
2.实现一个接口时需要实现接口中的所有方法
3.接口不能实现接口,接口只能继承接口,因为接口中的方法都是没有方法体的,如果接口可以实现接口,那么实现的过程就必定要定义方法体,对方法进行重写,所以两者是矛盾的。
4.接口中的成员变量都是public + static + final的。当然在接口中具体定义某个成员变量的时候这三个修饰符可以默认省略,也就是可以不写。

abstract 抽象

1.抽象类是一种不能被直接实例化的类,它必须被继承,并且在子类中的所有抽象方法必须被重写。
2.抽象类可以包含抽象方法和非抽象方法。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值