python中的类

http://sebug.net/paper/python/


最简单的类

#!/usr/bin/python
# Filename: simplestclass.py

class Person:
        pass

p = Person()
print p


构造函数 析构函数

#!/usr/bin/python
# Filename: simplestclass.py

class Person:
        def __init__(self, name):
                self.name = name
        def __del__(self):
                print "%s say bye" %(self.name)
        def sayHi(self):
                print "Hello, my name is ", self.name

p = Person('Ro')
p.sayHi()

但是貌似python中没有c++中的重载。


继承

#!/usr/bin/python
# Filename: inherit.py

class 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 a 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.salary

class 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.marks

t = Teacher("Mrs. Shrividya", 40, 3000)
s = Student('Swaroop', 22, 75)

就是在类定义时在括号中写上父类的名字。

而且值得注意的是,子类的构造函数不会自动调用父类的构造函数,需要显示调用。

不知道怎么多重继承。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值