首页 > 代码库 > Python之路-python(面向对象进阶)
Python之路-python(面向对象进阶)
一、面向对象高级语法部分
1、静态方法、类方法、属性方法
2、类的特殊方法
3、反射
二、异常处理
三、Socket开发基础
一、面向对象高级语法部分
静态方法(@staticmethod)
定义:只是名义上归类管理,实际上在在静态方法里面访问不了类或实例中的属性
1 class Dog(object):2 def __init__(self,name):3 self.name = name4 5 @staticmethod6 def eat(x,s):7 print("%s is eating %s"%(x,s))8 Dog.eat("df","fdasf")9 》》》df is eating fdasf
类方法(@classmethod)
定义:类方法只能访问类变量,不能访问实例变量
1 class Dog(object): 2 name = "444" 3 def __init__(self,name): 4 self.name = name 5 6 @classmethod 7 def eat(self): 8 print("%s is eating"%(self.name)) 9 10 d = Dog("zhangsan")11 d.eat()12 》》》444 is eating
属性方法(@property)
定义:把一个方法变成一个静态属性
1 class Dog(object): 2 def __init__(self,name): 3 self.name = name 4 5 @property 6 def eat(self): 7 print(" %s is eating" %self.name) 8 9 d = Dog("zhangsan")10 d.eat()11 》》》TypeError: ‘NoneType‘ object is not callable
1 正确的调用方法 2 class Dog(object): 3 def __init__(self,name): 4 self.name = name 5 6 @property 7 def eat(self): 8 print(" %s is eating" %self.name) 9 10 d = Dog("zhangsan")11 d.eat#eat后面不加()
类的特殊成员和方法
1、__doc__,打印类的描述信息
1 class Dog(object): 2 ‘‘‘ 3 这里是描述信息 4 ‘‘‘ 5 def __init__(self,name): 6 self.name = name 7 8 def eat(self): 9 print(" %s is eating" %self.name)10 11 print(Dog.__doc__)12 >>>这里是描述信息
2、__module__ 和 __class__
Python之路-python(面向对象进阶)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。