ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python基础第二十九章:面向对象的内置成员以及方法的分类

2019-08-02 11:03:52  阅读:276  来源: 互联网

标签:__ 第二十九章 python think 面向对象 Human print 方法 class


面向对象的内置成员以及方法的分类

内置成员:

#内置成员
#__dict__获取类/对象的所属成员组成的集合
# class Human:
# eye=2
# def think(self):
# print('人类会思考')
#
# ren=Human()
# print(Human.__dict__)


#__doc__获取类中的文档
# class Human:
# '''
# 这个类名是Human
# 成员属性是eye
# 成员方法是think
# '''
# eye=2
# def think(self):
# print('人类会思考')
#
# ren=Human()
# print(Human.__doc__)
# 这个类名是Human
# 成员属性是eye
# 成员方法是think

#__name__:获取类名称的字符串
# class Human:
# eye=2
# def think(self):
# print('人类会思考')
#
# ren=Human()
# print(Human.__name__,type(Human.__name__))

#主要会这么用(后面讲):
# if __name__ == '__main__':
# pass

# __module:获取当前类所在的文件的名称,如果当前文件显示main
# class Human:
# eye=2
# def think(self):
# print('人类会思考')
#
# ren=Human()
# print(Human.__module__)

# __bases:获取当前类的父亲列表
# class Human:
# pass
# class Man(Human):
# pass
# class Woman(Human):
# pass
# class Child(Woman,Man):
# pass
# print(Child.__bases__)

方法分类:
1.对象方法:该方法中会直接传入当前对象
调用方式:对象。成员方法()
特征:会将当前对象传入方法中

2.类方法:在方法中会直接传入当前类
@classmethod
 类。成员方法()
特征:会将当前类传入方法中
3.绑定类方法:在方法中不会传入类或者对象的方法
 调用方式:类。成员方法()
特征:不会传入类/对象,只能通过类来调用
4.静态方法:与类和对象无关,但是存在于类结构中的方法
 @staticmethod:返回函数的静态方法
调用方式:类。成员方法()/对象。成员方法()



class Human:
eye='2'
#对象方法
def think(self):
print('人类会思考')
#类方法
@classmethod
def eat(cls):
print('吃的真香')
#绑定类方法(只能用类来调用)
def sleep():
print('睡得真舒服')
#静态方法
@staticmethod
def play():
print('玩的真愉快')
ren=Human()
#对象调用方法
ren.think()
#类调用方法
Human.eat()
#绑定类调用(只能用类来调用)
Human.sleep()
#静态方法(对象和类都可以调用)
Human.play()
ren.play()

标签:__,第二十九章,python,think,面向对象,Human,print,方法,class
来源: https://www.cnblogs.com/szc-boke/p/11287245.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有