Python基础17_类中的成员

 一. 类的成员
    在类中能写的所有内容都是类的成员
二. 类的成员-变量
    1. 实例变量(字段)
    实例化对象的变量, 由对象访问
    2. 类变量(静态变量)
    变量属于类, 多个对象共享的, 最好用类名访问(可以修改), 但对象也可以访问(不可以修改)
三. 类的成员-方法
    1. 成员方法(实例方法)
    定义实例方法时, 必须给出一个参数self(本类中的对象), 且该参数在第一个位置, 调用时自动把对象传递给形参的self, 调用时不需要再给出self
    2. 静态方法
    @staticmethod
    属于类, 好比在类中定义了一个函数, 静态方法不需要我们给方法传递self, 也就是说, 当出现一个方法不需要使用到成员变量的时候, 就可以选择使用静态方法. 推荐使用类名访问
    3. 类方法
    @classmethod
    属于类, 子类可以继承父类的类方法, 在声明的时候需要给出一个能够接受类名的参数(cls), 放在参数的第一个位置, 类方法在被调用的时候也不需要传递实例对象, 但是, 系统会自动把类传递给第一个参数
四. 类的成员-属性
    @property
    属性其实就是把方法更改为属性, 每次拿属性的时候就会自动调用这个方法, 方法的返回值就是属性值
    缺点: 此属性不可以赋值(因为方法不能赋值)
    注意: (1).方法参数只能有一个self (2).方法上要写@property (3). 调用的时候, 不需要写括号, 直接当做属性变量来用就可以了 (4). 这个套路只能取值, 不能设置值
    当某个属性必须经计算才能得到结果时, 会用到这种方法
五. 私有
    所有以 __ 开头的方法和变量都是私有内容, 子类无法继承, 外界无法访问, 除非自己想暴露
    1. 私有变量
    私有的内容不能访问, 但是如果对方开辟了外界访问的通道(公共方法), 那可以通过这个公共方法来获取私有的内容, 这样做的好处是外界只能看但是改不了, 
    实例变量和类变量都可以私有
    2. 私有方法
    外界无法访问到本类中的私有方法, 但是本类中可以调用
    

原文地址:https://www.cnblogs.com/guyannanfei/p/10140563.html