9.类的私有化属性

1.区域划分

å¨è¿éæå¥å¾çæè¿°

2.公有属性 x

å¨è¿éæå¥å¾çæè¿°

3.受保护属性 _y

å¨è¿éæå¥å¾çæè¿°

å¨è¿éæå¥å¾çæè¿°表示可以访问,但有警告,不报错

__all__ = ["_y", ...]			#	列表内的属性可以用跨模块访问方式2访问

4.私有属性 __z (双下划线 __)

å¨è¿éæå¥å¾çæè¿°

 

    私有属性只能通过类的内部进行访问

class Person:
	def __init__(self):
		self.__age = 18
	
	def set_age(self, value):
		if isinstance(value, int) and 0< value<100:
			self.__age = value
		else:
			print("输入的value有误")
p1 = Person()
p1.set_age(20)					#	此处已将age改为20

    注意私有属性的实现机制  -> 名字重整机制

class Person:
	__x = 10 					#	实际上将是由属性x改成了:_Person__x = 10

    其实可以通过

Person._Person__x

    来访问私有化属性,但既然私有化了这个属性,通过该方式访问它就显得没有意义了。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值