scala 에서 import 문을 쓸 때, java.lang.* 과 같이 쓸 수 있다. 



import java.lang._



한 번에 필요한 클래스만 import 문으로 쓸 수 있다.


import java.lang.{Float, Double, Integer}




특이한 것은 =>을 이용해서 나름 import rename 기능을 쓸 수 있다.


import java.lang.{Long => JLong}
val scalaLong : Long = 1L
println(scalaLong.getClass.getCanonicalName)

val javaLong : JLong = 1L
println(javaLong.getClass.getCanonicalName)


결과는 다음과 같다. scala long과 java long을 나눠 쉽게 쓸 수 있다.


long

java.lang.Long




또한, 여러 줄에 걸쳐 rename할 필요 없이 한 번에 사용할 수 있다.


import java.util.{Map ⇒ JMap, List ⇒ JList}





자바의 static import 기능은 짧게 static 없이 사용한다.


import java.lang.Math._



rename 기능과 static import을 합쳐서 커스텀 메소드도 만들어 낼 수 있다. 


import java.lang.Class.{ forName => classForName }
classForName("com/google/model/Member")






Posted by '김용환'
,