Untitled

any type에서 모든 타입이 출발

→ unit아무런 의미없는 단일 인스턴스 타입

anyRef가 모든 객체형의 부모

모든 any타입은 nothing의 부모 타입이고 null의 부모는 anyRef만 해당

scala type hierarchy

any는 모든 타입의 상위 타입이다.

자손 타입은 anyval → 모든 value타입을 대표한다.

→ unit은 아무런 의미가 없고 () 로 표현가능하다.

모든 함수는 리턴타입이 잇어야해서 리턴타입이 없을 경우/사이드 이펙트를 일으켜야 하는 경우 유닛을 사용

anyRef 두가지가 있다.

→ 값이 아닌 타입들

→ 자바 실행 환경의 문맥으로 쓰일때는 anyref는 java.lang의 오브젝트에 대응된다.

//scala 2 and 3

val list: List[Any] = List(
  "a string",
  732,  // an integer
  'c',  // a character
  true, // a boolean value
  () => "an anonymous function returning a string"
)

list.foreach(element => println(element))

//output

a string
732
c
true
<function>