java - 使用泛型参数重载方法

标签 java generics overloading

我有返回通用参数的方法。 例如

public E doSmth(E item){
return item;
}

有没有办法创建相同的方法 get 但仅例如字符串

public String doSmth(String item){
return item + item;
}

因此,如果我传递字符串,它会使用字符串,但如果我传递其他任何内容,它会使用泛型执行基本方法。我可以以某种方式做到没有错误“类中有两个相同的方法”吗?

最佳答案

这应该有效吗? Java 将始终尝试调用具有您在调用中放入的参数类型最精确的方法

public <E> E doSmth(E item){
  return item;
}


public String doSmth(String item){
 return item + item;
}

关于java - 使用泛型参数重载方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53558258/

相关文章:

java - 尝试从字符串中删除字符

有规范问题的 Java Print 程序?

java - java虚拟机如何将用户级函数与其内部函数连接起来?

Java泛型?扩展克拉兹

c++ - 函数重载、继承和隐式构造函数 : weird priority

java - 通过JSP连接MySQL

java - java8中的有界类型编译错误

generics - Kotlin 绑定(bind)类型参数扩展重载

python - 递增现有属性时调用 __setattr__ 吗?

c# - 重载 += 事件运算符