python重载和多态问题

python不像java,c++等面向对象一样存在着多态和重载的问题,在python中用缺省参数很好的实现了多态和重载,同时python是不需要声明变量类型的,所以很多方法是可以共用的,在python中只存在着重写。

一.多态的实现

class Student(object):

    def __init__(self,name=None,age=None,grade=None):
        self.name=name
        self.age=age
        self.grade=grade

    def get_name(self):
        return self.name
    def get_age(self):
        return self.age
    def get_maxGrade(self):
        return sorted(self.grade,reverse=True)[0]
这样可以解决函数传递参数的不同

二.重载与重写的区别

1.重写必须继承,重载不用。
2.重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。
3.重写的方法修饰符大于等于父类的方法,重载和修饰符无关。
4.重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值