日期:2014-05-20  浏览次数:20793 次

关于两个接口有相同名字的方法,如何解决?
Java code
interface A()
{
    public double getName();
}
interface B()
{
    public double getName();
}



public class testA implements A, B{
    
    public double getName()
    {
        return 1.0;
    }

}



------解决方案--------------------
探讨
Java code
interface A()
{
public double getName();
}
interface B()
{
public double getName();
}



public class testA implements A, B{

public double getName()
{
return 1.……

------解决方案--------------------
有这种情况,但很少,尽量避免
------解决方案--------------------
应该可以通过类名来访问吧!!!
------解决方案--------------------
你这种可以编译通过的吧
------解决方案--------------------
嗯,看来接口名仅仅只是个标识,无任何规范约束上的意义。
------解决方案--------------------
可以通过编译啊,只不过不管是调用A接口的getName还是B接口的getName,都会返回testA的getName的值,没有任何意义啊

------解决方案--------------------
探讨
引用:

可以通过编译啊,只不过不管是调用A接口的getName还是B接口的getName,都会返回testA的getName的值,没有任何意义啊

编译没问题,但编译器到底访问哪个函数呢?

------解决方案--------------------
字母组合的名字多了去了,干嘛跟方法名过不去啊?这不是没事打磋么?
------解决方案--------------------
后面加序号 cat1 cat2 

增加方法名的长度
------解决方案--------------------

下面的两个方法能行吗? 并且传null值会怎么办

Java code
interface A()
{
    public double getName(String s);
}
interface B()
{
    public double getName(Integer i);
}



public class testA implements A, B{
    
    public double getName(String s)
    {
        return 1.0;
    }
public double getName(Integer i)
    {
        return 1.0;
    }


}

------解决方案--------------------
探讨
有两个接口,它们都有相同的方法,但实现的方法不同,我想在访问中如何做到访问指定的方法