Python之私有属性与继承

一、私有属性
一般面向对象的编程语言都会区分公有和私有的数据类型,像C++和Java他们使用public和private关键字,用于声明数据是公有还是私有的,但在Python中并没有用类似的关键字来修饰
In [1]:

class Person:
name=’小甲鱼’
p=Person()
p.name
Out[1]:
‘小甲鱼’

为了实现类似私有变量的特征,Python内部采用了一种叫 name mangling(名字改编)的技术,在python中定义私有变量只需要在变量名或函数名前面加上 ‘_ _’ 两个下划线,那么这个函数或变量就会成为私有的了

In [24]:

#
class Person:
__name=’小甲鱼’
p=Person

p.__name

p._Person__name #如果想直接在外部访问获取可以采用这种方法,也可以通过方法从内部获取,如下面的编码所示
Out[24]:
‘小甲鱼’
In [21]:

class Person:
def init(self,name):
self.__name=name
def getName(self):
return self.__name
p=Person(‘小甲鱼’)
p.getName()
p._Person__name
Out[21]:
‘小甲鱼’
二、继承
In [30]:

class Parent:
def hello(self):
print(“正在调用父类方法…”)
class Child(Parent):
pass
p=Parent()
p.hello()
c=Child()
c.hello()
正在调用父类方法…
正在调用父类方法…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值