override与重载的区别
override与重载的本质区别在于它们所针对的方法特征是否相同。
1.override(重写):它是用于重写基类的虚方法,这样在派生类中可以提供一个新的方法。当子类中的方法与父类中的某个方法的名称和参数完全相同时,子类的方法会覆盖父类的方法。这是面向对象编程的多态性的一种表现。子类覆盖父类的方法时,只能比父类抛出更少的异常,或者是抛出父类抛出的异常的子异常,因为子类可以解决父类的一些问题,不能比父类有更多的问题。子类方法的访问权限只能比父类的更大,不能更小。
2.overload(重载):它是提供了一种机制,相同函数名通过不同的返回值类型以及参数来表来区分的机制。表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。系统会根据你提供的参数来调相应的函数。