私有属性和私有方法

3.8 权限控制—私有属性

#公有属性

self.nicheng=“小王”

#保护属性 :可以访问,但一般不让修改

self._name=“王不二”

#私有属性:不能通过实例对象直接访问,但是可以在类里面访问

def money(self):

self.__money = “10000”

print(self.__money)

类的保护变量:可以通过实例直接访问

但是子类不可以使用父类的私有属性

# 3.9私有方法

‘’‘实现类的私有属性和方法’’’

class Father(object):

‘’‘实现父类、基类’’’

def init(self):

self.nickname = ‘隔壁老王’

self._name = ‘王一二’

self.__money = ‘8百块’

def printname(self):

print(self._name)

def __costmoney(self):

‘’‘定义私有属性’’’

print(self.__money)

def costmoney(self):

‘’‘调用私有方法’’’

self.__costmoney()

def chagenickname(self):

‘’‘实现修改他的昵称’’’

print(‘修改之前的昵称:’,self.nickname)

self.nickname = input(‘请输入修改之后的昵称’)

print(‘修改之后的昵称:’,self.nickname)

class Son(Father):

‘’‘实现子类,派生类’’’

pass

if name == ‘main’:

# 创建一个父类的实例
# A = Father()
# A.costmoney()
# print(A._Father__money)
# A._Father__costmoney()
# #  A调用属性
# # print(A.__money) 实例不可以直接访问私有属性
# print(A._name) #实例直接访问保护属性
# print(A.nickname)
#
# a = Son()
# a.costmoney()
# # print(a.__money)
# print(a._name)
# print(a.nickname)

私有的属性,不能通过对象直接访问,但是可以通过方法访问

私有的方法,不能通过对象直接访问

私有的属性和方法不能被子类继承,也不能访问

一般情况下,私有的属性和方法都不对外公布,用来做内部的操作,起到安全的作用

强行获取:

获取私有属性:print(A._Father__money)

调用私有方法:A._Father__costmoney()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值