Overload是重载的意思,表示在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不同即可
Override是覆盖的意思,也就是重写,它与返回值类型无关,度只看参数列表,两者不同主要体现在:目的不同、范围不同、参数不同、多态性不同、返回类型不同。
overload和override的区别
1、目的不同
overload用于增加程序的可读性(做法不同,但是做的同一事情)。 override用于提供知其超级类已经提供的方法的特定实现。
2、范围不同
overload 在相同的类范围内内执行。override发生在两类具有继承(继承)的关系道。
3、参数不同版
overload参数必须不同。 override参数必须相同。
4、多态性不同
overload 静态权多态,调用的函数在编译时被选中。 override 是运行时多态性的。
5、返回类型不同
overload中可以相同或不同。但你必须改变参数。 override必须是相同的或协变的。
网友评论文明上网理性发言已有0人参与
发表评论: