对类的继承的理解

        要认识和学习类的继承,我们首先要了解类的类型有哪些。类主要分为三类:普通类、接口类、抽象类。其中,普通类是只能含有普通方法和构造方法的类;抽象类是可以有普通方法、构造方法和抽象方法的类;而接口中的方法只能是抽象的。由于有抽象方法的存在,所以抽象类和接口类是不能创建实例的。
        面向对象相对于面向过程的一个优势就是代码更加简洁,程序员把具有相同特征的事物归结为一个类,当另一个类具有相同特征和行为,我们无需再重新定义,只需将这个类继承前一个类就可以了,这样就可以很好地避免了代码的冗余。如:我们可以将有两只眼睛、一个嘴巴、有学习能力等特征或行为的定义为动物类;当我们定义狗、猫、猴子时,他们也都具有动物的基本特征,这样我就不需要再重复定义这些特征和行为了。
        由于类的类型不同,类与类之间的继承也是有区别的。因为抽象类和接口类中有抽象抽象方法,所以在普通类在继承抽象类和接口类时,必须子类重写父类中的抽象方法;在抽象类继承接口类,如果抽象方法没有改变可以不用重写,但如果将抽象方法转型为普通方法就需要就方法重写。
         在重写方法是需要注意的是:子类的方法名、参数、返回值必须和父类继承过来的方法一致,而方法体与父类的方法体不同。
         完成类的继承后,在给类创建对象时,有可能出现对象的自动转型。如类Son继承了类Parents,若  Parents peo = new Son();   这样创建对象时,虽然调用的方法是类Son中的,但是这个对象的类型已经转型为类Parents的了。由于对象的类型发生了转化,所以可能导致同属于父类的两个对象调用同一个方法,但方法体不一样,执行过程和结果就不一样,这就称为多态。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值