Tag: 自我型

编写一个比Java更优雅的可复制接口

我试图编写一个接口,类可以实现,使他们“可复制”,(类型)安全Clonable。 在Java中,我会使用递归泛型来做这样的事情: public interface Copyable<C extends Copyable<C>> { C copy(); } public class Example implements Copyable<Example> { … @Override public Example copy() { return new Example(this); //invoke copy constructor } } 显然这不是那么优雅,可Copyable和Example的标题看起来过于复杂。 有没有更好的方式来实现这个Kotlin?