程序员应如何理解多态

本文探讨了多态在编程中的含义,通过代码示例解释了为什么要使用多态,以及它如何提高代码的简洁性和可扩展性。通过总统与幕僚的类比进一步阐述了多态的概念,强调了抽象和接口的重要性。最后总结了多态在面向对象编程中的价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面向对象编程领域有个非常重要的概念,那就是多态,但是你真的理解这到底是什么意思吗?程序员该如何理解多态?

 

英文中的多态

多态一词其英文为“polymorphism”,在讲解多态之前让我们来分析一下这个单词。

这个单词其实包含了两部分,一部分是poly;另一部分是morph,这两个词在希腊语中是很多词的词根:

  1. poly,在希腊语中原指许多的意思,包含poly这个词根的有:polygon,即多边形;polygolt,即多语言。

  2. morph,原指形态,包含morph这个词根的有:morphology,即形态学;morpheus,即希腊神话中的梦神,可以幻化成任何形态,值得一提的是,电影《黑客帝国》找到Neo的男主角之一就叫morpheus,中文译作了墨菲斯。

现在这两个单词拼凑在一起的polymorphism意思就直白多了,在编程语言当中,多态是指用相同的接口去表示不同的实现

 

加一点代码:为什么使用多态

让我们用一点代码来说明问题,假设代码中有三个class:  自行车(Bicycle)、汽车(Car)和卡车(Truck),这三个class分别有这样三个实现:Ride()、Run()、Launch(),实际上都是让它们发动起来,如果没有多态的话我们该怎样开动它们呢?(注意这里没有采用特定语言,因为多态是一个通用的概念)<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值