码迷,mamicode.com
首页 > 编程语言 > 详细

python 面向对象(成员,静态,类)的(变量,方法)区别

时间:2017-01-17 10:33:40      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:strong   并且   method   成员   面向对象   添加   加密算法   通过   变量   

静态方法是使用@staticmethod装饰的方法,并且参数表中不需要self或者cls,可以访问类成员变量

默认的方法是有self的,是成员方法,可以访问私有变量和方法(通过self.xxx),或者访问类方法或变量(通过类名.方法名变量名)

类方法使用@classmethod来装饰,参数表中不需要self,但需要cls参数和当前类关联。不能访问成员变量和方法,但是可以通过cls.xxx访问类方法或类变量

一下是参考了网上的一些大神的总结:

 静态成员方法: 不能访问类属性,实例属性,相当于一个独立的方法,可以理解和类没关系,只是用类加了个作用域,比如:一个类,有三种加密算法,可以考虑静态方法;

类成员方法   : 能访问类属性,无法访问实例属性,这里要注意,python是动态语言,和c++不同,实例是可以动态添加属性的,即实例的属性和类的属性不一定一样 

python 面向对象(成员,静态,类)的(变量,方法)区别

标签:strong   并且   method   成员   面向对象   添加   加密算法   通过   变量   

原文地址:http://www.cnblogs.com/luruiyuan/p/6291828.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!