考虑它的最直接方法是根据方法需要什么类型的对象来进行工作。如果您的方法需要访问实例,请使其成为常规方法。如果需要访问该类,请将其设为类方法。如果不需要访问类或实例,则使其成为函数。很少需要将某种静态方法变为静态方法,但是我想如果您希望将某个函数与一个类“分组”(例如,因此它可以被覆盖),即使它不需要访问该类,您可以将其设为静态方法。
我要补充一点,将功能放在模块级别不会“污染”名称空间。如果要使用这些函数,则它们并不污染名称空间,而是按应使用的方式使用它。函数是模块中的合法对象,就像类或其他任何东西一样。如果没有任何理由,没有理由将函数隐藏在类中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)