我正在尝试扩展 Python 库以添加我想要的功能。该库提供了许多 HTML 表单对象(例如Textbox
、Dropdown
、Checkbox
等),它们都派生自一个Input
对象。我想为所有这些派生对象添加一个附加属性。正确的处理方式是什么?
我可以:
- 修改
Input
类的原始源代码,添加我想要的属性。 - 创建一个继承
Input
并添加我的属性的新类,然后创建一堆继承的新类Textbox
,Dropdown
和我的新Input
类。 Textbox
使用该属性为、Dropdown
等创建新类。
解决方案 1 是最简单和最简单的,但本质上是错误的,而其他两个似乎比这项任务需要更多的工作和代码重复。
有我缺少的解决方案吗?