子类重写父类重写方法的问题

我想问一下,当父类方法不能满足子类需求时,为什么不自己定义一个方法而是去重写父类的方法?这两者有什么区别吗,比如重写顶级父类里的toString或者是equals方法,为什么不能自己写一个功能相同的方法,求解答

子类是可以自己写一个方法的,父类中可以没有,也可以根据子类实际需求重写父类的方法。他们不冲突,你提到的tostring方法照样可以自己定义一个方法具有tostring功能。
但我们习惯使用重写,因为java的继承是一个特性,在实际开发中使用重写去实现对应功能比重新定义一个方法去实现功能更容易维护管理,以及迭代。
以上是我个人想法,希望对你有帮助

这就是多态的特性:用同样的对象引用调用同样的方法但是做了不同的事情

重写父类的方法方便快速,而且其余子类可能也需要该方法,就可以接着重写,名字一样,方便记忆

重写其实就是单独写了一个方法,只不过这个方法覆盖了父类的同名方法,重写之后子类会用自己的方法而不是父类的方法。
为什么要用重写?
第一,减少代码量,增加可读性。重写的前提是继承,继承这一特性可以让我们在一个长继承链的各个类中只定义各自需要的属性和方法,这样开发人员不需要对每一个类都进行重复的编写,阅读的时候也更加清晰明了。如果没有重写,那么父类的某个方法不能满足某个子类中的需求时就只能在这个子类中单独再编写一个方法,但是这个方法不能与父类的方法重名也要从名字表示方法的作用,这样子不管是这个子类或者接口的开发人员进行编写还是其他人对方法进行调用都是一定的麻烦,因为这个类里的方法太多了。
第二,符合我们现实的认知。同一个方法,比如休息,有人喜欢看书,有人喜欢散步,这些方式放在“人”这个父类里都可以概括为休息,但是各自具体的方式(方法体)却又不同,这就是重写。
我个人目前对于重写的认知主要是这两点。