名称屏蔽(在继承中重载):如果java的一个基类拥有某个被多次重载的方法,那么我们在子类中重新去定义该方法不会去屏蔽基类中该方法的任何版本(重载)<br />** 实例——名称屏蔽**
package com.zx.test05;
class Home{
char doH(char c){
System.out.println(c);
return c;
}
int doH(int c){
System.out.println(c);
return c;
}
float doH(float c){
System.out.println(c);
return c;
}
}
class MilHouse{}
class Bart extends Home{
void doH(MilHouse mi){//定义一个类型为MilHouse的doH()方法
System.out.println("doH(MilHouse mi)");
}
}
public class Hide {
public static void main(String[] args) {
Bart bart = new Bart();
bart.doH(1);
bart.doH('c');
bart.doH(2f);
bart.doH(new MilHouse());
}
}
OutPut:
1
c
2.0
doH(MilHouse mi)
尽管我们在Bart中新定义了一个doH()方法,但是Home中的doH()在此时仍是可执行重载的。