1 重载
【特征】针对同一类,同函数名,参数不同
【举例】
class TestBase { ... private: void test(); void test(int, int); virtual test(float, float); }
2 覆盖
【特征】针对不同的具有继承关系的类。函数名相同,参数相同,且基类声明有virtual关键字
【举例】
class Test : public TestBase { ... private: void test(float, float);//注意基类TestBase中有virtual关键字 }
3 掩藏
【特征】针对不同的具有继承关系的类。在不同的类中,函数名相同,参数不同。或在不同的类中,函数名相同,参数相同,但基类没有使用virtual关键字
【举例】
class Test : public TestBase { ... private: void test(int, float);//形参不同,不是重载 void test(int, int); //基类没有virtual关键字,不是覆盖 }
【备注】
原文描述有误,已修改,修改日期2011-12-25
转载于:https://www.cnblogs.com/J2EEPLUS/archive/2011/12/24/2487969.html
相关资源:JAVA上百实例源码以及开源项目