python的类
类方法 ,不管初始化,还是其他,都自带一个self
其中一句,self 代表的是类的实例,所以写自动化的时候才能,写成self.open ,等, 因为 open是 父类定义的一个方法,子类去调用,self就是类的实例,所以 self.方法名,就相当于 java new了一个类的对象,对象点 方法去调用
问题,孙类,继承 父类, 父类,继承 爷爷, 这个self. 指的是谁? 孙类,可用self.方法,调用 父类 ,和 爷爷的? 父类,调爷爷的?
那 初始化的,怎么算,都有自己的初始化
下面这个图,就是写自动化时,子类调用父类的初始化
运用的典型的写法
父类名称.__init__(self,参数1,参数2,...)
如果变量写在,类下面,不需要写self, 所有这个类的实例都能调用
子类集成父类时,子类直接调用父类的,初始化方法,_init_ 子类自己重写的话,就使用子类的,不用父类的
2、在调用基类的方法时,需要加上基类的类名前缀,且需要带上 self 参数变量。区别在于类中调用普通函数时并不需要带上 self 参数
这也就是为啥我写自动化时,这个patientname直接写方法名,就行,只要把方法引进来就行。输入类中调用普通函数时,不需要写self
集成多个类
class A: # 定义类 A ..... class B: # 定义类 B ..... class C(A, B): # 继承类 A 和 B