我是编程新手,我想知道这两个类定义之间的区别是什么?哪一个是更好更安全的定义? 有实例变量的还是有构造函数方法的?你知道吗
谢谢
class MyClass1:
def doAdd (self,val1=0,val2=0):
sum1=val1+val2
print("MyClass1")
print ("{0}+{1}={2}".format(val1,val2,sum1))
class MyClass2:
def __init__(self,val1=0,val2=0):
self.val1=val1
self.val2=val2
def doAdd(self):
sum2=self.val1+self.val2
print("MyClass2")
print("{0}+{1}={2}".format(self.val1,self.val2,sum2))
obj1=MyClass1()
obj1.doAdd(1,2)
obj2=MyClass2(1,2)
obj2.doAdd()
MyClass1
1+2=3
MyClass2
1+2=3
MyClass1
您可能希望执行加法并将和存储在
__init__()
方法中,以避免每次调用doAdd()
时都重新计算它。就像@gragas所说的,这个方法可以让您存储数据,以便以后在其他方法中使用。你知道吗MyClass2
这里没有使用任何面向对象的特性,所以它可能只是一个常规函数。你知道吗
相关问题 更多 >
编程相关推荐