英文 | 中文 | 例子 |
Override | 覆盖 | Class parent { void method() { //I am a father’s method. } } class child extend parent { void method() { //I am child’s method } } 这里说method在class child里被override覆盖. 这个一般发生在继承时.子类不想完全继承父类的方法.就覆盖掉父类的方法. 比如: child c=new child(); c.method();//执行子类自己的method (//I am child’s method) parent c=new child(); c.method();//执行的也是子类自己的method (//I am child’s method) |
Overload | 过载, 重载 | Class MM { void method(String str) { //I am a method with String patameter } void method(int i) { //I am a method with integer patameter } } 这里说method被overload过载,重载. 国内翻译的不统一.有的书甚至把override叫过载.很见鬼.>_<.只好记英文拉. 一般发生在一个方法(实际是一个名字)想具有不同的功能. 比如: + 号: 1+1;//整数可以相加 “a”+”b”;//字符串可以相加 上边的例子: MM mm=new MM(); MM.method(“I am a String”);//通过参数的类型和个数区分用的哪个方法 MM.method(123456);//这里用的是void method(int i) |