****类****
一个种类,一个模型。汽车模型
class Person: #经典类
pass
class Person2(object): #新式类
pass
****对象****
指具体的东西,模型造出来的东西叫做对象。
self 代表的是本类对象;也就是实例化之后的值;
self 的内存地址 与 实例化对象的内存地址 一致
self代表的是本类对象。
因为函数里面的变量都是局部变量,出了函数就不能用了。
用self给对象绑定了之后,就可以self.xx随便用了
****实例****
实例和对象是一样的。
****实例化****
实例化就是造东西的这个过程。
class Person():
Person() ------ # 这就是实例化
****属性****
就是变量
****方法****
就是类里面的函数
class Person():
def face() ------ #这个就是方法
***继承***
就是一个类继承另一个类的所有东西
如 class Person1()
class Person2(Person1) ------ Person2 继承了 Person1;实例化 Person2后可以直接调用直接调用 Person1 里面的变量和方法
***封装***
将多个自带功能组合成一个新的功能,供后续调用
***多态***
注:
【self】代表的是本类对象。
因为函数里面的变量都是局部变量,出了函数就不能用了。
用self给对象绑定了之后,就可以self.xx随便用了
【构造函数】
def __init__():
pass
构造函数就是类在实例化的时候执行的函数。
类在实例化的时候,会自动执行它
【析构函数】
def __del__():
pass
实例被销毁的时候执行的。(即在运行最后一行代码后会自动执行的代码;用作于实例销毁)
*************************************************************************************************************************************************
***属性方法***
看起来像属性的一个方法。
@property #装饰器
引用的时候,后面紧跟的def hhh(self) 定义的变量,调用时时不能跟(),调用的结果时函数的返回值
前提条件:函数不能有参数
***类变量***
类变量,公共的变量,每个实例都可以用
直接定义的变量
class Person():
cou ='china' #类变量;调用方法:Person.cou
def __init__(self):
......
......
***实例变量(成员变量)***
***实例方法***
实例化之后才可以用的。
***类方法***
1、不用实例化就可以直接调用。
2、它可以通过cls使用类变量
3、它不能调用这个类里面的其他实例方法和实例变量
class Person():
@classmethod ---- 紧跟其后的定义的函数就是类方法;调用方法Person.xm()
def xm(cls): #cls代表的就是Person
print(cls.country)
print('我是类方法')
***静态方法***
#你不想实例化的时候,就可以定义成类方法
#静态方法就是一个普通函数,只不过是写在类里面而已,它用不了类变量、类方法、实例变量、实例方法
@staticmethod
def xh():
print('这个是静态方法,它和一个没写在类里面的函数一样')
****************************************************************************************************************************************
私有
出了类之后,就不能用了。
***私有方法***
def __face()
***私有变量***
self.__face = 5
*************************************************************************************************************************************
注:
if __name__ == '__main__':
判断这个python是在别的地方导入的,还是直接运行的这个python文件
这句话一般是做调试的时候用的。
如果是直接运行这个python文件的时候,这句话一点用都没有
print(__name__) #当前python运行结果为 __main__
#调用的情况下打印的结果是 【所在的文件名】