课程
/后端开发
/Java
/Java入门第二季 升级版
视屏中,老师为什么还要写个抽象类APerson的来代替本来的Person类,这样,是不是整个包里面的Person类是不是就不需要了,这个类删掉也行了吧?
2016-03-31
源自:Java入门第二季 升级版 11-2
正在回答
person类可以删除掉的,具体看main方法内容,看具体执行哪一个.使用抽象类APerson可以不用关心Person类中say方法具体内容,只需声明即可.(即可以省略掉System.out.println("人类具有说话能力") ).
1.抽象类是用来约束其子类的功能的,而且抽象类本身不能被实例化,这就加强了安全性;
2.让代码变得简介有效;
3.抽象类是程序逻辑更清晰;
person类可以删除掉,老师用两种方法是为了让人知道两种不同的原理。
不过抽象类对于此题更简洁,因为不需要使用父类的方法的内容。
楼下说的很对,而且还可以省略代码行数
person类应该可以删除掉的 已经用了一个抽象类来定义了 使用抽象类可以更好地说明实现它的子类必须要实现的功能 也就是说起到了一个约束子类的作用
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
2 回答为什么子类不继承抽象父类的普通类?
3 回答为什么一个类继承了一个父类(抽象类),子类继承的父类的方法会报错呢
4 回答请问如何用抽象类继承抽象类
1 回答在子类继承抽象父类时,父类的抽象方法不能满足子类的需求要走怎么做呢。
2 回答为什么会这样报错呢,不是说子类继承抽象类会重写父类的抽象方法吗