类属性
class Example(object):
name = 'mod'
age = 18
name和age称为类属性
实例属性
class Example1(object):
def __init__(self,name, age):
self.name = name
self.age = age
这里self就是实例化的对象,self.name和self.age就是实例属性
类方法
class Example3(object):
@staticmethod
def info():
print('staticmethod')
info就是一个静态方法,静态方法的特点就是在方法通过staticmethod
装饰器修饰,然后不需要传递实例对象self或者类对象cls
调用可以通过类对象和实例对象调用
# 通过类对象调用
Example3.info()
# 通过实例对象调用
Example3().info()
静态方法
class Example4(object):
name = 'mod'
@classmethod
def get_name(cls):
return cls.name
类方法通过classmethod
装饰器修饰,第一个参数为cls,为类对象本身
调用
# 通过类对象调用类方法
Example4.get_name()
# 通过实例对象调用类方法
Example4().get_name()
类对象
在一个python模块中(也就是一个.py的python文件),当类定义完成以后将会创建一个类对象,也就是我们所定义的对象,该对象支持属性引用和实例化两种操作
实例对象
实例对象也就是调用类对象创建的一个新对象,实例对象可以创建多个,每个实例对象有自己的独立实例属性,也就是独立的内存空间,共用类对象里面的一套方法。