【发布时间】:2014-04-23 14:58:32
【问题描述】:
我正在阅读jls 8,但我卡在Example 8.1.2-1、Mutually Recursive Type Variable Bounds 我搜索了stackoverflow,发现了一个问题what is a mutually recursive type?,但这不是Java 方面的问题。
示例 8.1.2-1。相互递归类型变量界限
interface ConvertibleTo<T> {
T convert();
}
class ReprChange<T extends ConvertibleTo<S>,
S extends ConvertibleTo<T>> {
T t;
void set(S s) { t = s.convert(); }
S get() { return t.convert(); }
}
问题:
递归类型和互递归类型在Java中是什么意思?
T extends ConvertibleTo<S>, S extends ConvertibleTo<T>是什么意思?如果我只使用
T extends ConvertibleTo<S>作为 ReprChange 类的 类型参数,我会收到编译时错误吗?
【问题讨论】: