1.显示传递self
类名.函数名(实例对象)
class person(object):
def init_person(self,name,age):
print (name,age)
p = person()
#普通的调用方式
p.init_person("xiaoming",10)
#显示的传递self
person.init_person(p,"xiaoming",10)
2.继承
(1)class类名(基类1,基类2...)
(2)被继承的类我们叫做父派或基类
(3)继承的类叫子类或派生类
(4)子类具备父类的方法
(5)一个子类有多个基类,那么叫做“多重继承”,尽量避免多继承
3.(1)子类调用父类的方法: 父类的名字.父类的名字(显示的传递self,参数1...)
(2)python会先在子类里面找方法,找不到就会到父类里面去找;
(3)若子类需要调用基类的方法(子类有方法时),
则需要显示调用:类名.函数名(实例象)
4.重载:子类重新实现了基类原有的方法
5.类的基础方法(隐式调用,被动调用)
(1)构造函数 init(self [,args...])
obj = className(args)
class student(person):
#构造函数,在构造对象实例的时候,会被隐式的调用
#构造函数的参数传递
#重载父类的init函数
def init(self,name,age):
print("student init",name,age)
s = student("xiaoming",21)
运行输出:
('student init', 'xiaoming', 21)
(2)析构函数del
#析构,当对象内存被回收的时候(对象不用了,销毁并释放内存的时候调用)
(3)str(self) 用于将值转化为适于人阅读的形式
class student(person):
def str(self):
print("str student")
return "my_student class"
print(str(s))
运行输出:
my_student class
(4)cmp(self,x) 对象比较
6.垃圾回收:
(1)在特定时期,如果没有任何一个变量指向对象,那么该对象的内存就会被回收
(2)del object 删除一个对象