这种通用方法签名意味着什么
public <S, D> D map(S sourceObject, java.lang.Class<D> destinationClass);
Run Code Online (Sandbox Code Playgroud)
我指的是<S, D>.
此方法返回在第二个参数中发送的相同类型的对象.
我不能写
public D map(S sourceObject, java.lang.Class<D> destinationClass);
Run Code Online (Sandbox Code Playgroud)
Mar*_*lis 14
这意味着此方法调用需要两个类型参数:S和D.
该<S, D>部分用作声明此方法是通用的并且采用两个类型参数,然后将其用作方法签名中实际类型的占位符.
当您调用该方法时,要么提供参数,要么从您作为参数传递的表达式的类型中推断出这些参数,如下所示:
String val = map(10, String.class);
Run Code Online (Sandbox Code Playgroud)
在这种情况下,S是Integer和D是String
| 归档时间: |
|
| 查看次数: |
7203 次 |
| 最近记录: |