python的cls,self,classmethod,staticmethod
来源:互联网 发布:java 工程师速成班 编辑:程序博客网 时间:2024/05/18 20:07
python类里会出现这三个单词,self和cls都可以用别的单词代替,类的方法有三种,
一是通过def定义的 普通的一般的,需要至少传递一个参数,一般用self,这样的方法必须通过一个类的实例去访问,类似于c++中通过对象去访问;
二是在def前面加上@classmethod,这种类方法的一个特点就是可以通过类名去调用,但是也必须传递一个参数,一般用cls表示class,表示可以通过类直接调用;
三是在def前面加上@staticmethod,这种类方法是静态的类方法,类似于c++的静态函数,他的一个特点是参数可以为空,同样支持类名和对象两种调用方式;
代码:
class A: member = "this is a test." def __init__(self): pass @classmethod def Print1(cls): print "print 1: ", cls.member def Print2(self): print "print 2: ", self.member @classmethod def Print3(paraTest): print "print 3: ", paraTest.member @staticmethod def print4(): print "hello" a = A()A.Print1() a.Print1()#A.Print2()a.Print2()A.Print3()a.Print3() A.print4()
- python的cls,self,classmethod,staticmethod
- python的cls,self,classmethod,staticmethod
- python的cls,self,classmethod,staticmethod
- python的cls,self,classmethod,staticmethod
- python的cls,self,classmethod,staticmethod
- python的staticmethod、classmethod
- python 的@classmethod &&@staticmethod
- python的staticmethod和classmethod
- python的@classmethod和@staticmethod
- Python @staticmethod 和 @classmethod 的异同
- 理解python的staticmethod与classmethod实现
- 【Python】Staticmethod和classmethod的区别
- 理解python的staticmethod与classmethod实现
- Python中的staticmethod和classmethod 的异同
- python中staticmethod和classmethod的区别
- Python的classmethod和staticmethod区别
- python中classmethod和staticmethod的区别
- Python @classmethod 和 @staticmethod的比较
- 如何查看文件的字符编码
- Matlab GUI例子
- TOMCAT优化
- 上证A股股指跌破1900
- IOS成长之路-NSDictionary和NSMutableDictionary例子微解
- python的cls,self,classmethod,staticmethod
- Android ListView 下拉刷新 点击加载更多
- 斯坦福机器学习公开课笔记(十三)--推荐系统
- 设计模式 -- Observer 观察者模式
- jquery添加属性checked不管用(jquery,prop的使用)
- Android Dialog 详解
- 交叉编译器的路径加入到PATH
- java socket 多线程网络传输多个文件
- 动态增加input标签