#python3.7
class People(object):
def __init__(self,name,age,sex):
self.name=name
self.age=age
self.sex=sex
self.xuesheng=[]
def xue(self,stu_obj):
self.xuesheng.append(stu_obj)
class Student(People):
def __init__(self,name,age,sex,Stu_id,grade,charge):
super(Student,self).__init__(name,age,sex)
self.Stu_id=Stu_id
self.grade=grade
self.charge=charge
def info(self):
print('''
name:%s
age:%d
sex:%s
Stu_id:%d
charge:%s
''' % (self.name, self.age, self.sex, self.Stu_id, self.charge))
class Women(Student):
def __Info(self):
print('''
name:%s
age:%d
sex:%s
Stu_id:%d
charge:%s
''' % (self.name,self.age,self.sex,self.Stu_id,self.charge))
#静态方法
@staticmethod
def Grade():
print('They are new students')
class Man(Student):
charge=6000
@classmethod
def Charge(self):
print('All men like playing %s' % self.charge )
#属性方法
@property
def Age(self):
print('%s is %d years old' % (self.name, self.age))
@Age.setter
def Age(self,a):
print('%s is %d years old' % (self.name,a))
s1=Women('小丹',30,'female',123455,2000,5000)
s2=Student('小花',30,'female',123455,2000,5000)
s3=Man('小明',20,'male',123456,2018,4500)
s1.xue(s2)
# print(People.xue)
print('---------私有方法------')
s1._Women__Info()
print('--------普通方法,多态------------')
s3.info()
print('-----------类方法-------')
s3.Charge()
print('----------静态方法------')
Women.Grade()
print('----------属性方法------')
s3.Age
s3.Age=15
s2.info()
运行结果
---------私有方法------
name:小丹
age:30
sex:female
Stu_id:123455
charge:5000
--------普通方法,多态------------
name:小明
age:20
sex:male
Stu_id:123456
charge:4500
-----------类方法-------
All men like playing 6000
----------静态方法------
They are new students
----------属性方法------
小明 is 20 years old
小明 is 15 years old
name:小花
age:30
sex:female
Stu_id:123455
charge:5000
Process finished with exit code 0