python学习笔记2-强大的动态创建

本文讨论了在面向对象编程中如何根据不同输入动态创建不同子类的问题。以水果为例,介绍了多种编程语言(如C++, Java, Python等)实现该功能的方法,并对比了其优劣。

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

OO编程中有时会遇到这样的问题。
我们有很对象数,水果和子类苹果,梨,香蕉....,然后我们需要根据配置文件或者输入来决定到底创建哪一个子类。

对于C++,不得不写成



或者动用创建型设计模式使得代买美观一点,消除掉这个 switch case。对于Java. dotNet可以用反射。对于Python,则可以用 exec语句。

exec(" fur =%s()"%type)

对于javascript则可以使用eval()函数。
动态语言确实很强大,不过要注意的是避免用户用特定的输入拼凑出一个可怕的语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值