方法没有重载,后续新的方法可以覆盖旧的方法;@property 装饰器的用法, 可以省去set和get的操作,直接赋值就行
class Salary:
def __init__(self,name,salary):
self.__name = name
self.__salary = salary
@property
def salary(self):
return self.__salary
@salary.setter
def salary(self,salary):
if salary>0:
self.__salary = salary
else:
print("error")
b= Salary("gao",30000)
print(b.salary)
b.salary=20000
print(b.salary)
继承结构 不太理解方法的重写,子类覆盖父类;object类是所有的类的父类;str 可以重写类多重继承,尽量避免使用,会把类搞的很复杂;mro()多个父类相同的方法名称,用这个就可以来super()获取父类的定义; 10.多态,方法的多态不是属性的多态,存在与继承,方法重写,定义 animal,也可以定义doganimal,两个类里可以有相同的方法;is a 的关系用继承,has a 的用组合设计模式:工厂模式及单例模式,单例:核心是一个类只有一个实例;
转载请注明原文地址:https://ipadbbs.8miu.com/read-58565.html