本帖最后由 隋营营 于 2012-5-9 07:31 编辑
假如有两个接口Painter、Singer,接口中方法名相同,返回值类型不同
interface Painter {
double getMoney();
}
interface Singer {
void getMoney();
}
若有一个类实现了这两个接口,必须重写这两个方法,但在重写时会发现:方法不能构成重载,因为参数列表相同。
这时我考虑能否在类中写一个内部类,分别实现这两个接口:
class Lady implements Painter {
public double getMoney() {
return 0;
}
class Miss implements Singer {
public void getMoney() {
System.out.println("中国");
}
}
}
在测试类中可以这样创建内部类对象
public class Testext {
public static void main(String[] args) {
happy();
}
static void happy() {
System.out.println(new Lady().getMoney());
new Lady().new Miss().getMoney();
}
}
可以输出结果:0.0 中国
大家看这种方法是否可行?
非常感谢给出建议!
|