Python学习之路:总结
类
属性
实例变量
类变量
私有属性
方法
构造方法:初始化实例
析构方法(函数)
私有方法
对象:实例化一个之后得到的对象
封装
把一些功能的实现细节不对暴露
继承
代码的重用
单继承
多继承
2.7 经典类,深度优先;新式类,广度优先
3.x均是广度优先
class SchoolMember(object): # member = 0 def __init__(self,name,age,sex): self.name = name self.age = age self.sex = sex # self.enroll() # # def enroll(self): # print("just enrolled a new school member [%s]"%self.name) # self.member += 1 # def tell(self): # # print("---info: %s----"% self.name) # for k,v in self.__dict__.items(): # print("\t",k,v) # # print("--------end---------") # # def __del__(self): # print("开除了[%s]..." % self.name) # SchoolMember.member -= 1 class School(object): def open_branch(self,addr): print("opening a new branch in " ,addr) school = School() class Teacher(SchoolMember,School):#多继承 def __init__(self,name,age,sex,salary,course,school_obj): #SchoolMember.__init__(self,name,age,sex) #经典类写法 super(Teacher,self).__init__(name,age,sex) #新式类写法 self.school =school_obj self.salary = salary self.course = course def teaching(self): print("Teacher [%s] is teaching [%s]"%(self.name,self.course)) # class Student(SchoolMember): # def __init__(self,name,age,sex,course,tuition): # SchoolMember.__init__(self,name,age,sex) # self.course = course # self.tuition = tuition # self.amount = 0 # # # # def pay_tuition(self,amount): # print("student [%s] has just paid [%s]"% (self.name,amount)) # self.amount += amount t1 = Teacher("Wusir",22,"F*M",3000,"Python","ShangHai") # s1 = Student("HaiTao",30,"M","PYS15",300000) # s2 = Student("LiChuang",12,"M","PYS15",11000) # # print(SchoolMember.member) # t1.tell() # s2.tell() # t1.open_branch("ShangHai")