面向对象之反射及内置方法
一、静态方法(staticmethod)和类方法(classmethod) 类方法:有个默认参数cls,并且可以直接用类名去调用,可以与类属性交互(也就是可以使用类属性) 静态方法:让类里的方法直接被类调用,就像正常调用函数一样 类方法和静态方法的相同点:都可以直接被类调用,不需要实例化 类方法和静态方法的不同点: 类方法必须有一个cls参数表示这个类,可以使用类属性 静态方法不需要参数 绑定方法: 分为普通方法和类方法 普通方法:默认有一个self对象传进来,并且只能被对象调用-------绑定到对象 类方法:默认有一个cls对象传进来,并且可以被类和对象(不推荐)调用-----绑定到类 非绑定方法: 静态方法:没有设置默认参数,并且可以被类和对象(不推荐)调用-----非绑定 1 class Student: 2 f = open('student', encoding='utf-8') 3 def __init__(self): 4 pass 5 @classmethod #类方法 :有个默认参数cls,并且可以直接使用类名去 6 #调用,还可以与类属性交互(也就是可以使用类属性) 7 def show_student_info_class(cls): 8 # f = open('student', encoding='utf-8') 9 for line in