java - 接口(interface)类名中的标签 <>

标签 java spring generics spring-batch

我正在尝试学习 Spring Batch,这本书提供了示例接口(interface)类,但命名约定让我失望。

public interface ItemProcessor<I,O> {
O process(I item) throws Exception;

}

我以前从未在类名中见过参数。它们有实际用途还是只是作为指导?如果更改类名,以下代码有何不同?

public interface ItemProcessor {
O process(I item) throws Exception;

}

最佳答案

您正在谈论generics .

IO 是该类的通用参数。

您可以将 ItemProcessor 视为“IOItemProcessor”。

了解泛型如何工作的最简单方法是考虑类 Box

现在它是什么盒子

class Box<? extends Number>

...是一个由 Number 组成的 Box

等等

关于java - 接口(interface)类名中的标签 <>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22382738/

相关文章:

java - 如何在2个不同的java-spring项目中设计服务

java - 将 ArrayList<SomeClass> 作为参数 ArrayList<Comparable> 传递给单独类中的方法

java - 具有接口(interface)返回类型的通用方法

c++ - 各种类型的容器 - C++

java - 我可以对函数 CURSOR 结果使用命名参数吗?

java - 如何使用 jQuery Ajax 将 javascript 数组发送到 struts 操作

java - ejb3端点Web服务jboss 7抛出非法状态异常

java - 使用 DAO 时的数据验证模式

java - 文件可用后立即运行 Spring Batch 作业

java - 使用 Spring MVC、JPA 和 Hibernate 添加 ManyToMany