Kotlin教程:密封(Sealed)类声明与示例
密封(Sealed
)类是一个限制类层次结构的类。 可以在类名之前使用sealed
关键字将类声明为密封类。 它用于表示受限制的类层次结构。
当对象具有来自有限集的类型之一,但不能具有任何其他类型时,使用密封类。 密封类的构造函数在默认情况下是私有的,它也不能允许声明为非私有。
密封类声明
sealed class MyClass
密封类的子类必须在密封类的同一文件中声明。
sealed class Shape{
class Circle(var radius: Float): Shape()
class Square(var length: Int): Shape()
class Rectangle(var length: Int, var breadth: Int): Shape()
object NotAShape : Shape()
}