【问题标题】:Generic class that implements a particular interface实现特定接口的通用类
【发布时间】:2021-07-24 10:10:30
【问题描述】:

因此,让我们以这个例子为例,我有一个 A 类和 B 类,A 和 B 都实现了特定的接口字母。现在我需要在另一个类中创建一个特定的函数,其中我需要传递 A 类对象或 B 类对象,并类似地对这些对象进行一些操作并返回 A 或 B 类对象。现在我可以使用泛型类型 T 定义函数,但要注意的是 T 必须始终实现接口字母。 所以一个没有实现接口字母的类 1 的对象不会被允许通过这个函数。

public class A implements letters{...}
public class B implements letters{...}
public class LetterOperations{
 public T letterOp(T letter){..}
}

这里的 letterOp() 必须只接受那些实现接口字母的泛型类 T。

【问题讨论】:

  • 主要问题是如何精确定义泛型类型。

标签: java oop object-oriented-analysis


【解决方案1】:

在声明泛型类时添加类型参数绑定:

   public class LetterOperations<T extends letter> {
     public T letterOp(T letter){..}
   }

或者使用带类型参数的方法:

   public <T extends letter> T letterOp(T letter){..}

【讨论】:

    猜你喜欢
    • 2022-11-18
    • 2014-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    相关资源
    最近更新 更多