第26814题 单选题
不同对象调用同名move()接口输出不同结果,体现了面向对象编程的哪项特性?
class Vehicle:
    def __init__(self, brand):
        self._brand = brand  # 私有属性用下划线表示

    def set_brand(self, brand):
        self._brand = brand

    def get_brand(self):
        return self._brand

    def move(self):
        print(f"{self._brand} is moving...")

class Car(Vehicle):
    def __init__(self, brand, seat_count):
        super().__init__(brand)
        self._seat_count = seat_count

    def show_info(self):
        print(f"This car is a {self.get_brand()} with {self._seat_count} seats.")

    def move(self):
        print(f"{self.get_brand()} car is driving on the road!")

class Bike(Vehicle):
    def __init__(self, brand):
        super().__init__(brand)

    def move(self):
        print(f"{self.get_brand()} bike is cycling on the path!")

def main():
    v1 = Car("Toyota", 5)
    v2 = Bike("Giant")

    v1.move()  # 输出: Toyota car is driving on the road!
    v2.move()  # 输出: Giant bike is cycling on the path!

if __name__ == "__main__":
    main()
{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
程序运行统计
暂无判题统计
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析