코틀린을 왜 사용할까?
간결한 문법
안전한 처리 (NPE)
JVM , 자바와의 호환
자바의 getter, setter, equals 등.. 데이터클래스를 만들때 간결하게 처리.
람다식도 간결화.
var output: String
output = null // Compilation Error
val name: String? = null // Nullable type
println(name.length()) // Compilation Error
fun calculateTotal(obj: Any) {
if (obj is Invoice)
obj.calculateTotal()
} // auto cast 캐스팅 오류 없애줌.
소스를 자바와 코틀린 둘다 사용이 가능하다.