为什么是调用咱们写的呢?我使用多态调用,有多个实现类都有这个方法,调用的是哪一个呢/
时间: 2023-08-31 16:43:04 浏览: 182
### 回答1:
在使用多态调用时,具体调用哪一个实现类的方法取决于你在代码中实例化的对象类型。如果你实例化的是 CSDN 开发的 ChitGPT,那么调用的就是 ChitGPT 中实现的方法。如果你实例化的是其他实现类的对象,那么就会调用对应实现类中的方法。这也是多态的优点之一,可以在不改变代码的情况下灵活地切换不同的实现类。
### 回答2:
调用我们自己写的方法有如下原因:
1. 可控性: 我们自己编写的方法通常是为了满足特定的业务需求,因此我们可以对方法的功能、参数等进行精确的控制,以满足实际应用中的需求。
2. 可维护性: 我们自己编写的方法可以根据实际需求进行修改和维护,以适应系统的升级和功能扩展。
3. 代码风格一致性: 使用我们自己写的方法可以保持代码风格的一致性,使代码看起来更加整洁、易于阅读和维护。
使用多态调用时,由于多个实现类都有相同的方法,调用的是具体哪个实现类的方法取决于实际运行时所指向的对象类型。例如,如果我们定义了一个抽象类或接口,并在多个类中实现了该抽象类或接口,而且这些类都有相同的方法名称和参数列表,那么在运行时通过多态调用该方法时,会根据实际对象的类型来决定具体调用哪个类中的方法。
多态的使用可以提高代码的灵活性和可扩展性,使得我们可以通过统一的接口调用不同实现类中的方法,根据实际业务需求进行适配和扩展。这样可以使代码更加易于扩展和维护,并且可以减少代码的重复性。
### 回答3:
调用我们所写的方法是因为我们了解我们所写方法的具体实现,能够正确地使用它。使用多态调用时,如果有多个实现类都有这个方法,最终调用的是具体实例的方法,而不是抽象父类的方法。通过多态,我们可以根据需要选择具体实现类的对象,然后调用相应的方法。具体调用哪一个实现类的方法取决于当前实例的类型,即使实例赋值给父类引用变量,不同实例也会调用各自的方法。这样,我们可以在不改变代码的情况下,灵活地切换不同的实现类,达到调用不同方法的目的。调用哪一个方法是在运行时动态决定的,因此我们需要在程序运行前通过合适的实例进行函数调用,保障程序能够正确执行所需的方法。
阅读全文