java支持泛型方法支持所有类型的参数输入吗?
我想为hystrix默认回退方法编写一些方法,例如:java支持泛型方法支持所有类型的参数输入吗?,java,generics,hystrix,fallback,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) { re
//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");
public void m(K...) {...}
public int m(K...) {...}
public void m(K){...}
public int m(K, K) {...}
java支持这种通用方法吗 是的,您可以在方法中使用此参数来实现这一点
public void method (Object ... objects){
for(Object obj : objects){
//do stuff
}
}
它被称为varargs,您可以找到更多信息是的,您可以在方法中使用此参数来实现
public void method (Object ... objects){
for(Object obj : objects){
//do stuff
}
}
它叫varargs,你可以找到更多你可以随时使用的信息
nullDefaultFallback(Object...args);
你可以随时使用
nullDefaultFallback(Object...args);
对于具有相同方法名称的不同返回类型,需要指定不同的方法签名。例如:
//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");
public void m(K...) {...}
public int m(K...) {...}
public void m(K){...}
public int m(K, K) {...}
不是有效案例,但是,例如:
//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");
public void m(K...) {...}
public int m(K...) {...}
public void m(K){...}
public int m(K, K) {...}
对于方法名称相同的不同返回类型,您需要指定不同的方法签名。例如:
//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");
public void m(K...) {...}
public int m(K...) {...}
public void m(K){...}
public int m(K, K) {...}
不是有效案例,但是,例如:
//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");
public void m(K...) {...}
public int m(K...) {...}
public void m(K){...}
public int m(K, K) {...}
将很好地工作我不清楚您所说的
通用参数列表
的确切含义。您的示例可以用几种方式描述:K,V..
,K..
传递参数列表对象可能与您的方法重复我不清楚您所说的通用参数列表的确切含义。您的示例可以通过几种方式进行描述:K,V..
,K..
您的方法可能会重复传递参数列表对象