A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


今天我们学习了面向对象三大特性的最后一个多态。请按照自己的理解回答下面问题:

1.接口和抽象类的区别?
答:抽象类是对具体类(子类)的共性的抽取,而接口是对具体类的特性的抽取,两者都对具体类有着约束作用。
抽象类更多的是作为具体类的一个超类,模板,而接口则是一种特殊功能的抽象方法的集合。一个子类只能继承其一个抽象父类
而,一个子类依照特殊功能的扩展需求,可实现多个接口也可以一个也没有,父类下的每个子类,不一定都拥有特殊的功能的拓展。
抽象类除了不能直接创建该类对象外,与普通的类有着相同的组成和功能,如可以有普通的成员变量,可以有普通的成员方法
而接口内的方法都是默认为抽象方法,成员变量都是final修饰的恒定常量。

2.继承和实现的区别?
答:继承中,父类中的方法,是定义且实现的,而接口实现中,在接口只进行了方法的定义声明,在实现的子类中才进行方法体的实现
继承关系中,一个子类只能允许一个单级父类,不允许多继承,而接口实现是允许多单子类多实现的

3.多态有什么好处?
答:多态,增加了程序的可拓展性,通过多态中的下转上,可以实现批量传参具有共性的对象集,再通过上转下,可以实现传参后的逐
个对象目标的访问操作。

4.什么时候需要用到向上转型?什么时候需要用到向下转型
答:在需要批量的将数据集进行传参处理时,需要用到向上转型,当传参过后,在方法体中进行逐个目标对象的访问与操作中,需要通过
向下转型后才可以操作。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马