override和overload

来源:互联网 发布:外贸流程知乎 编辑:程序博客网 时间:2024/04/25 20:41

 

        Override是指父类和子类之间方法的继承关系,这些方法有着相同的名称和参数类型。 
        Overload是指同一个类中不同方法(可以在子类也可以在父类中定义)间的关系,这些方法有着相同的名称和不同的参数类型。

        也就是说,如果在子类声明相同的方法名称的时候,如果不是用inherited来继承的话,就会将父类的方法覆盖掉;而且父类的方法声明必须标识为virtual和dynamic;overload比较好理解,就是同类里有许多相同的方法名称,但是参数不相同。且第一个方法可以不用overload来标识。

        override的方法返回值类型必须一致,其modifier可以扩大,不可以缩小。

        一个不是用abstract标识的方法不可以override成abstract方法。

       override的子类的方法拋出的异常只能是父类方法拋出异常的子异常。