Tag: 类扩展

数据和开放不兼容,我有哪些替代方案?

我正在做一个gli的kotlin端口 ,现在我被卡住了 其实我有以下几点 open class Texture 扩展了几个类,如Texture2d 现在, Texture有相当的一些属性 protected val storage: StorageLinear? protected val target: Target protected val format: Format protected val baseLayer: Int protected val maxLayer: Int protected val baseFace: Int protected val maxFace: Int protected val baseLevel: Int protected val maxLevel: Int protected val swizzles: Swizzles 因此我想把它作为一个data类来利用它所附带的equals() 。 但不幸的是data和open不兼容..(看到这个问题 ) 有一种方法可以解决这个问题,我可以编写我自己的equals()方法,但是这将是样板代码和肮脏的,正是我为什么切换到java的kotlin最大的两个原因 另一种方式,因为所有扩展Texture的class都不会真的添加任何东西,所以它们会起到类似的构建器的作用(看起来类似于Texture2d类 […]