繁体   English   中英

Java接口具有不同的方法参数

[英]Java interface with different method parameters

我想有一个允许我使用不同参数的方法的接口。 假设我有一个界面:

public interface Stuff {
    public int Add();
 }

我有两个实现接口的A和B类。

public class CLASS A implements Stuff{
    public int Add(int id);
}  


public class CLASS B implements Stuff{
    public int Add(String name);
}

我怎样才能做到这一点?

您可以编写一个通用接口来添加某些类型,如下所示:

public interface Addable<T> {
    public int add(T value);
}

然后通过实现它

public class ClassA implements Addable<Integer> {
    public int add(Integer value) {
        ...
    }
}

public class ClassB implements Addable<String> {
    public int add(String value) {
        ...
    }
}

要么重载方法:

public interface Stuff {

    public int add(String a);
    public int add(int a);

 }

或检查继承中的共同点

public interface Stuff {

    public int add(Object a);

 }

或使用泛型

public interface Stuff<T> {

    public int add(T a);

 }

你需要覆盖该方法

public class CLASS A implements Stuff{
    public int add(int a ,int b){
        int result=a+b;
        return result;
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
       A ab=new A();
       ab.add(3, 4);
       System.out.println(ab.add(3, 4));
    }

}

这是你想要的吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM