這些接口是非常簡單的:在從屬接口上強制實施參數類型?
public interface Thawed<F>
{
F freeze();
}
public interface Frozen<T>
{
T thaw();
}
這工作,沒有任何問題。
但現在,我怎麼會需要Thawed
F
實施Frozen
和T
在Frozen
實現Thawed
?
我能得到的最接近的是:
public interface Thawed<F extends Frozen<? extends Thawed<F>>>
public interface Frozen<T extends Thawed<? extends Frozen<T>>>
但是,這聽起來很遞歸......(還與Thawed<?>
和Frozen<?>
)
是的,使用它的類都是「最終」的 - 在我的代碼,至少。當其他人使用它時,不能保證這一點;)謝謝你清除我的疑惑! – fge
@fge:第二個想法,你可以比這更好。 – SLaks