1. 程式人生 > >python中子類不能繼承父類的私有屬性和方法

python中子類不能繼承父類的私有屬性和方法




#在子類中是不能繼承私有屬性和方法的,
#但是私有屬性和方法可以在同一個類中被呼叫
class Person(object):
	def __init__(self,name):
		self.__name = name
		self._age = 12

	def greet(self):
		print('hello,my name is %s' % self.__name)

	def __run(self):
		print('base class is running')


	#但是私有屬性和方法可以在同一個類中被呼叫
	def running(self):
		self.__run()

class Student(Person):

	def greet(self):
		# print('hell, my name is %s' % self.__name)
		print('hello my age is %d' % self._age)
		self.__run()

p1 = Person('zhiliao')
# p1.greet()
p1.running()
# s1 = Student('zhiliao')
# s1.greet()

# 本節課的重點:子類不能繼承父類的私有屬性和方法