Java是否支持通用方法支持所有参数输入?

时间:2018-07-25 09:17:07

标签: java generics hystrix fallback

我想为hystrix默认后备方法编写一些方法,例如:

//declaration
public void voidDefaultFallback(generic argument list) {
    return;
}

public int intDefaultFallback(generic argument list) {
    return 0;
}

public Object nullDefaultFallback(generic argument list) {
    return null;
}
//invocation
nullDefaultFallback("a", "b");
nullDefaultFallback("a", 0);
nullDefaultFallback("a", 0, "abc");

java是否支持这种通用方法?

3 个答案:

答案 0 :(得分:3)

是的,您可以在方法中使用此参数来实现

public void method (Object ... objects){
        for(Object obj : objects){
            //do stuff
        }
    }

它称为 varargs ,您可以找到更多信息here

答案 1 :(得分:0)

您可以随时使用

nullDefaultFallback(Object...args);

答案 2 :(得分:0)

对于具有相同方法名称的不同返回类型,您需要指定不同的方法签名。例如:

public void m(K...) {...}
public int m(K...) {...}

无效,但例如:

public void m(K){...}
public int m(K, K) {...}

可以正常工作