Kotlin 密封類(sealed class)確實可以簡化代碼邏輯,提高代碼的可讀性和可維護性。密封類是一種特殊的類,它不能被繼承(除了它的子類)。這意味著你可以確保一個變量只能是密封類的一個子類的實例,這樣可以避免出現不受控制的類繼承。
使用密封類的好處:
下面是一個簡單的 Kotlin 密封類示例:
sealed class Shape {
data class Circle(val radius: Double) : Shape()
data class Rectangle(val width: Double, val height: Double) : Shape()
data class Triangle(val base: Double, val height: Double) : Shape()
}
在這個例子中,我們定義了一個密封類 Shape
,它有三個子類:Circle
、Rectangle
和 Triangle
。由于 Shape
是密封類,所以其他類不能繼承它。這樣可以確保我們在處理 Shape
類型的變量時,只會有這三種可能的類型。