课程
/后端开发
/Java
/Java入门第二季 升级版
既然要在子类里重写方法,为什么不直接在子类里写方法,还要在父类里写一个然后在子类里再重写一次?
2016-09-20
源自:Java入门第二季 升级版 11-2
正在回答
你的意思是想声明一个类,写个方法,直接调用。那这样还要继承干嘛用呢
我问你:什么是继承?为什么要有继承?(继承就是当你写一个类时,虽然这个类满足了某些功能但是你又想拓展它的功能,此时你就可以使用继承机制在写一个该类的子类,来完成你想实现的功能)
还有,即使你没有明确指出要继承的类,也总是隐式地从根类Object进行继承。
呃。。。不知道你明白了没
GODOG 提问者
心有猛虎_细嗅蔷薇 回复 GODOG 提问者
满足方法的重写的前提是继承——子类重写会覆盖父类的方法并优先调用子类的方法。
前边课程里有讲过。Animals为父类,定义了一个方法friends-“动物是人类的好伙伴”。Dog继承了Animals的方法,但相比其他动物,我们让它突出“狗是人类最忠实的伙伴”。这时候就用到了方法的重写。有点像共性和个性的辩证关系。
小提示:在方法的多态中(两个类有继承关系才可以使用多态),如果你直接在子类里写方法,就不能通过父类的引用调用子类的独有方法。
父类的方法是用来约束子类方法的,给子类方法一个模板
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
1 回答父类与子类
2 回答子类与父类
2 回答super 关键字里面的父类与子类
2 回答子类与父类的构造方法关系
2 回答多态的子类方法重写和子类变量重写