咱们以前说了面向对象的三大特征是封装、继承、多态,今天咱们来看继承的java
所谓的继承就是在原有的代码结构上扩充新的功能,继承解决的是代码的重复的现象,本次课为了方便讲解,后面的类中的属性就暂时不使用private封装。面试
DEMO:观察问题spring
以上的两个类的代码存在什么问题?发现了类的属性和方法都是重复的,要解决这样的问题最好将这些重复的操做(方法和属性)定义到一个公共的类中,以后若是其余类要使用到这些公共的操做只须要继承这个公共的类便可,这个公共的类被叫作父类,有人叫作超类,又叫作基类,继承的叫作子类或者派生类。一个父类能够被多个子类继承(至关于一个父亲能够有多个孩子)。设计模式
此时以上的两个类都具有了父类的全部操做。微信
继承了父类的全部属性和方法(可是不能继承构造方法),这些公共的操做是继.承过来的,可是若是子类须要有一些特有的操做,此时应该在子类中单独定义。分布式
DEMO:在子类中单独定义特有的操做学习
一、继承是为了解决代码的重复,以及后面能够实现多态。spa
二、继承的语法:设计
public class 子类 extends 父类{}3d
三、子类出了能够继承父类的操做还能够扩充本身新的操做,并且子类不能继承父类的构造方法
四、一个父类能够有多个子类,可是一个子类只能有一个父类(这就是继承的局限性,叫作单继承局限),后面能够使用接口的实现来解决单继承的局限。
有完整的Java初级,高级对应的学习路线和资料!专一于java开发。分享java基础、原理性知识、JavaWeb实战、spring全家桶、设计模式、分布式及面试资料、开源项目,助力开发者成长!
欢迎关注微信公众号:码邦主