我最近读过,类型参数名称必须是一个大写字母。
如果是这种情况,那么不会有最大数量的类型参数吗?
表示最大值是否等于也是有效Java标识符的大写字母数?
答案 0 :(得分:3)
约定是对一个类型使用一个字母。但是,类型参数绑定only by the hard limits of an identifier,也就是说,它必须是有效的Java标识符。任何硬限制仅来自那个。
是有效的案例,可以接受违反惯例的行为。具体来说,在Java 7的时代,如果你正在做某种需要两种不相交类型的转换,你可以这样指定它:
public <DatabaseDataFmt extends DatabaseDTO,
ProjectionFmt extends ProjectionDTO,
Result>
Result transform(DatabaseDataFmt databaseFormat,
ProjectionFmt projectionFormat) {}
最终,这取决于您希望使用标识符完成的任务。约定帮助,但如果它没有帮助,那么就没有理由受其约束。