面试——Java中实现多态的三要素,实现多态的机制是什么?
2023-12-13 10:55:33
1.实现多态的三要素:
继承、重写、弗雷德引用指向子类的对象
2.实现多态的机制:
靠的是父类或接口定义的引用变量可以指向子类或具体实现类的实例对象,而程序调用的方法在运行期才动态绑定,就是引用变量所指向的具体实例对象的方法,也就是内存里正在运行的那个对象的方法,而不是引用变量的类型中定义的方法。
3.实现多态的方式:
方法重载:方法重载允许在同一个类中定义多个同名方法,但是这些方法的参数类型、参数个数不同或参数顺序不同。在调用这些同名方法时,Java会根据传入的参数类型或参数个数来自动选择调用哪个方法。这种方式实现的多态称为编译时多态。
方法重写:方法重写允许子类重新定义父类中的方法,以实现多态。当子类对象调用被重写的方法(父类的方法)时,Java会自动选择调用子类中的方法。这种方式实现的多态称为运行时多态。
接口实现:接口实现允许类根据实现的接口来实现多态。一个类可以实现多个接口,从而具有多种行为。当一个对象被声明为接口类型时,它可以引用任何实现了该接口的对象。这种方式实现的多态称为接口多态。
4.重写实际运行的方法:
重写:在子类中重写父类的方法。运行期间判断所引用对象的实际类型,根据其实际类型调用相应的方法。子类重写了父类的方法,父类的引用指向子类的对象,编译时调用的是父类的方法,执行时调用的是子类的方法;若没有重写,则编译执行都是调用的父类的方法。
5.多态的作用:
- 提高代码的可扩展性:多态可以在不修改原有代码的情况下,通过增加新的子类来扩展程序的功能。
- 提高代码的可维护性:多态可以将程序中的变化隔离开来,使得修改某个子类的代码不会影响其他子类的代码。
- 降低代码的耦合度:多态可以将程序中的依赖关系从具体的实现中解耦出来,使得程序更加灵活、可扩展。
文章来源:https://blog.csdn.net/m0_66349763/article/details/134844095
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!