4

什么时候类比函数更有用?有什么我应该知道的硬性或快速规则吗?它依赖于语言吗?我打算为 Python 编写一个脚本,它将解析不同类型的 json 数据,我的直觉是我应该使用一个类来执行此操作,而不是一个函数。

4

5 回答 5

9

当您的例程需要保存状态时,您应该使用一个类。否则一个函数就足够了。

于 2012-07-04T15:15:25.810 回答
3

首先,我认为这与语言无关(如果语言允许您也定义类和函数)。

作为一般规则,我可以告诉您,一个 Class 将自身包装成一个behavior。因此,如果您有某种类型的服务必须实现(使用不同的功能),那么您正在寻找的就是一个类。
此外,类(比如更正确的对象)具有状态,您可以实例化更多出现的类(因此具有不同状态的不同对象)。

同样重要的是,可以挖掘一个类:因此您只需稍作更改即可覆盖函数的特定行为。

于 2012-07-04T15:17:48.497 回答
1

拥有状态时的类-应该在调用中保持不变

其他情况下的功能

例外:如果你的类只存储几个值并且除了 __init__ 之外只有一个方法,你应该更好地使用该函数

于 2012-07-04T15:14:37.357 回答
1

对于任何重要的事情,您可能应该使用一个类。我倾向于将我所有的“自由浮动”函数限制在一个 utils.py 文件中。

于 2012-07-04T15:15:18.403 回答
1

取决于语言。

一些语言,如 Java,坚持对所有事情都使用一个类。根本没有独立功能的概念。

Python不是那样的。完全可以 - 实际上推荐 - 独立定义函数,并且可以将相关函数组合在模块中。正如其他人所说,您真正想要 Python 中的类的唯一时间是当您有需要保留的状态时 - 即将数据封装在对象中。

于 2012-07-04T15:20:16.793 回答