我正在尝试学习 Spring Batch,这本书提供了示例接口(interface)类,但命名约定让我失望。
public interface ItemProcessor<I,O> {
O process(I item) throws Exception;
}
我以前从未在类名中见过参数。它们有实际用途还是只是作为指导?如果更改类名,以下代码有何不同?
public interface ItemProcessor {
O process(I item) throws Exception;
}
最佳答案
您正在谈论generics .
I
和 O
是该类的通用参数。
您可以将 ItemProcessor
视为“I
和 O
的ItemProcessor
”。
了解泛型如何工作的最简单方法是考虑类 Box
。
现在它是什么盒子?
class Box<? extends Number>
...是一个由 Number
组成的 Box
。
等等
关于java - 接口(interface)类名中的标签 <>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22382738/