python3之面向对象---属性

按类型

面向对象编程中属性有:成员属性、类属性、实例属性。
成员属性:在类的初始化方法中绑定的属性;
类属性:归所在类所有,但该类和该类的所有实例都可以访问到;
实例属性:在实例化对象时对当前对象增加的属性,只有该对象可以访问。


class Person:
    '''
    person类
    '''
    num = 20  # 类属性

    def __init__(self, name, age):
        '''
        初始化
        :param name: 姓名
        :param age: 年龄
        '''
        self.name = name  # 类属性,归Person类所有
        self.age = age

    def info(self):
        '''
        输出信息
        :return: 
        '''
        print("name:", self.name)
        print("age:", self.age)
        print("类属性num:", self.num)


person = Person('tom', 5)
person.sex = '男'  # 定义实例属性
print('实例属性:', person.sex)
person.info()

按访问权限:

公有属性 (属于类,每个类一份)两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问;
普通属性 (属于对象,每个对象一份);
私有属性 (属于对象,跟普通属性相似,只是不能通过对象直接访问)。


猜你喜欢

转载自blog.csdn.net/llf_cloud/article/details/83831858