Python:实现多态

来源:互联网 发布:冰点还原 知乎 编辑:程序博客网 时间:2024/05/21 06:23

定义一个在校人的基类,分别派生出教师和学生,然后放入列表中,实现多态。

#!/usr/bin/python#Filename:inherit.pyclass SchoolMember:    '''Represents any school member.'''        def __init__(self, name, age):        self.name = name        self.age = age        print '(Initialized SchoolMember:%s)'%self.name    def tell(self):        '''Tell my details'''        print 'Name:"%s" Age:"%s"'%(self.name, self.age)class Teacher(SchoolMember):    '''Represents teacher.'''    def __init__(self, name, age, salary):        SchoolMember.__init__(self, name, age)        self.salary = salary        print '(Initialized Teacher:%s)'%self.name    def tell(self):        SchoolMember.tell(self)        print 'Salary:"%d"'%self.salaryclass Student(SchoolMember):    '''Represents a student.'''    def __init__(self, name, age, marks):        SchoolMember.__init__(self, name, age)        self.marks = marks        print '(Initialized Student:%s)'%self.name    def tell(self):        SchoolMember.tell(self)        print 'Marks:"%d"'%self.markst = Teacher('Mrs.Shrividya', 40, 30000)s = Student('Swaroop', 22, 75)printmembers = [t, s]for member in members:    member.tell()print 'Done'


0 0