面向对象
类的定义与使用
class Student(object):
pass
class后面是类名,即Student,类名通常是大写开头的单词,紧接着该类是由哪个类继承下来的,通常如果没有合适的继承类,就使用object类,这是所有类最终都会继承的类。
定义好了Student类,就可以根据类创建出Student的实例,创建实例是通过类名+()实现的:
bar=Student()
类的实例化分析
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
class Student(object): def __init__(self,name) self.Name=name def sayhi(self): print('hello,my name is',self,Name) d=Student('shaohui) d.sayhi()
d=Student('shaohui') #Student(d,shaohui)
d.sayhi() #d.sayhi(d)
d为实例化后产生的对象叫实例,self即为实例本身
__init__ 函数叫做构造函数,或者构造方法-----初始化方法
sayhi为类的方法 (动态属性)
self.NAME = name #属性或成员变量或字段
self.__heart='normal' 私有属性(对外面不可见,只能内部访问)
如果想要外部可以访问私有属性,可以在类中新定义一个方法,然后return self.__heart 就可以访问到私有属性的值(只可读,不可改)
如果想要强制访问 通过 d._Student__heart
self.Name为成员属性
公有属性
每个实例化的对象都可以访问的属性为公有属性,在类里直接定义的属性
class Student(object): age=22 def __init__(self,name): slef.Name=name
age=22即为公有属性
类的析构方法
def __del__(self)
print('del.....run')
实例销毁后自动触发
本章博客由作者刘少辉著写