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?

通过“访问者”和“复制”处理字段有什么区别

我不明白通过Kotlin中的访问器和复制方法处理字段的区别。 这是这样的: 访问器示例: class Person(val name: String, var age: Int) fun happyBirthday(person: Person) { person.age++ } 复制方法示例: data class Person(val name: String, var age: Int) fun happyBirthday(person: Person) { person.copy(age = person.age + 1) }