黑马程序员技术交流社区
标题:
重载和覆盖
[打印本页]
作者:
赵刘滨
时间:
2012-8-8 16:31
标题:
重载和覆盖
重载和覆盖的区别?
作者:
许庭洲
时间:
2012-8-8 16:57
1,覆盖,是是把基类的方法隐藏了,其实在子类中基类方法还存在,只是不可见而已,但是派生类中定义的时候前面要加上new;
2,重载没有new, 原基类的方法在子类中已经变成另一个方法了 。
作者:
彭书雄
时间:
2012-8-8 20:00
覆盖就是子类中有和父类相同的方法 当子类调用的时候 只能使用子类的方法 可以使用new方法调用父类的影藏方法
重载就是子类与父类相同的方法被实现不同的作用,实现了另外一种功能
作者:
yb61776662
时间:
2012-8-8 21:49
重载:在同一类中。方法名相同,参数列表不同。
重写:在不同类中(子父类中)。
方法声明相同(返回类型,方法名,参数列表)。
重载可以改变返回类型。
重写需要注意:
**子类方法的访问权限要大于等于父类方法的访问权限。
**静态只能重写静态。一般不会出现。
作者:
肖攀
时间:
2012-8-8 22:49
重载,必然发生在一个类中,函数名相同,参数类型或者顺序不同构成重载,与返回类型无关
覆盖,在子类中写一个和基类一样名字(参数不同也算)的非虚函数,会让基类中的函数被隐藏,编译后会提示要求使用New关键字
作者:
董蒙蒙
时间:
2012-8-8 23:02
重载:overload,是方法的名称相同,参数或者参数类型不同,进行多次重载以适应不同的需求,重载是面向过程的概念
覆盖:override,是进行基类中函数的重写,覆盖是面向对象的概念
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2