Python面向对象编程(三)

本文探讨Python的面向对象编程中的继承概念。通过继承,子类可以自动获取父类的属性和方法,但不包括私有成员。文章介绍了如何使用super函数来调用父类的方法,以及重写父类方法的实践。

Python面相对象编程之继承

继承的一般格式

>>> class A:
	pass

>>> class B(A):        #B类继承A类
	pass

类的继承是指在现有类的基础上,创建一个新的类,构建出来的新类被称为子类,现有的类被称为 父类,字类会自动拥有父类的和属性和方法,但是要注意的时,子类无法继承父类的私有属性和方法

>>> class Old_obj():
	def __init__(self,num):    #定义私有属性
		self.__num=num
	def __print_info(self):        #定义私有方法
		print(self.__num)

		
>>> class New_obj(Old_obj):
	pass

>>> a=New_obj(3)
>>> a.__num        #子类试图访问私有属性,报错
Traceback (most recent call last):
  File "<pyshell#50>", line 1, in <module>
    a.__num
AttributeError: 'New_obj' object has no attribute '__num'
>>> a.__print_info()        #子类试图访问私有方法,报错
Traceback (most recent call last):
  File "<pyshell#51>", line 1, in <module>
    a.__print_info()
AttributeError: 'New_obj' object has no attr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值