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()

按访问权限:

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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值