# @remark:类与对象
""""""
"""一、类的定义
class 关键字
class 类名(父类名):
'''类的帮组信息'''
属性:类中方法外定义的变量,名称或形容词,实例的状态或者数据
方法:类体中定义的函数,与函数一致,可以有参数列表和返回值。动词
"""
#1、实例
#类的声明 不传则默认父类是超类object
class Human:
"""人类"""
#定义属性(类属性)
message="这是类属性"
#构造方法 -自动执行,直接返回该类的实例,如果不行则默认创建一个构造方法
def __init__(self,name,age):
# 实例属性(变量)
self.name=name #通过self绑定到自身
self.age=age
print("这是构造方法")
print(Human.message) #这是类属性
"""二、类的方法
1)实例方法
-构造方法
2)类方法
3)静态方法"""
"""三、构造方法与实例化
作用:实例化对象
语法:def __init__(self,参数列表)
访问:类名(参数列表)"""
#实例化对象
person=Human("yanfa",18) #这是构造方法
#通过实例访问类属性
print(person.message) #这是类属性
#通过实例访问实例属性
print(person.name) #yanfa
print(person.age) #18
"""四、实例方法
作用:提供每个类的实例共享的方法
语法:def 方法名(self,参数列表)
访问:实例.方法名(参数列表)"""
# @remark:实例方法
class Human:
# 实例方法
def study(self,course):
print(f"正在学习{course}")
person=Human()
person.study("python") #正在学习python
"""五、类方法
作用:可以操作类的详细信息,不需要实例化
语法:@classmethod
访问:类名.类方法名(参数列表)"""
# @remark:类方法
class Human:
# 类属性
pop = 0
# 类方法 可以操作类的详细信息
@classmethod # 只能用这个装饰器
def born(cls): # cls是class的简写,是指类名本身
print("这是类方法")
cls.pop += 1
# 通过类名访问类方法
Human.born() # 这是类方法
print(Human.pop) # 1
"""六、静态方法
作用:不需要实例化对象
语法:@staticmethod
访问:类名.静态方法名()"""
# @remark:静态方法
class Human:
# 定义静态方法
@staticmethod
def grow_up():
print("这是静态方法")
#访问静态方法
Human.grow_up() #这是静态方法
python编程基础15-类与对象
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1 基本理论 1.1 对象 python 是一门特别彻底的面向对象编程(oop)的语言 其他语言会分为基本数据类型...
- 注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。 本文阅读时间约为3分钟。 对象的基本概念 ...
- 注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。 本文阅读时间约为2分钟。 列表方法.sor...
- 注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。 本文阅读时间约为2分钟。 类的继承机制 如...
- 注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。 本文阅读时间约为3分钟。 类的特殊方法 类...