1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
import java.lang.reflect.Modifier.isFinal
object Test {
object InnerObject
final case class InnerCase()
final class InnerNonCase()
def main(args: Array[String]) {
def checkFinal(clazz: Class[_]) =
println(s"${clazz} isFinal = ${isFinal(clazz.getModifiers())}")
checkFinal(InnerObject.getClass)
checkFinal(classOf[InnerCase])
checkFinal(classOf[InnerNonCase])
checkFinal(TopLevelObject.getClass)
checkFinal(classOf[TopLevelCase])
checkFinal(classOf[TopLevelNonCase])
}
}
object TopLevelObject
final case class TopLevelCase()
final case class TopLevelNonCase()
|