我正在创建一个接口,如下所示:
public interface InterfaceName {
public [Object Type Undecided] functionName(String str1, String str2);
}
我将具有实现此接口的函数,如下所示:
public class FunctionOne implements InterfaceName {
@Override
public [Object Type Undecided] functionName(String str1, String st2) {
// Code here
}
}
。
public class FunctionTwo implements InterfaceName {
@Override
public [Object Type Undecided] functionName(String str1, String st2) {
// Code here
}
}
在函数一中,我希望输出是整数,而在函数二中,我希望输出是布尔值。在以后的函数中,我希望输出是字符串或其他类型的。我应该制作什么类型的输出"函数名称"函数?
创建一个具有泛型类型的接口,例如
public interface InterfaceName<T> {
T functionName(..., ...);
}
让我们使用泛型类型例:
public interface InterfaceName <T>{
public T functionName(String str1, String str2);
}
public class FunctionOne <T> implements InterfaceName <T>{
@Override
public T functionName(String str1, String st2) {
// Code here
return (T)(Integer) 1;
}
}
public class FunctionTwo <T> implements InterfaceName <T> {
@Override
public T functionName(String str1, String st2) {
// Code here
return (T)(Boolean.True);
}
}