아래의 글은 마틴 오더스키,렉스 스푼,빌 베너스 공저 / 오현석,이동욱,반영록 공역, 『Programming in Scala 3/e』,에이콘출판사(2017), CH01의 내용을 기반으로 작성하였습니다.
optional
Any 모든 클래스의 슈퍼 클래스, Nill, Nothing 모든 클래스의 서브 클래스
AnyVal, AnyRef
AnyVal : Byte, Short, Char, Int, Long, Float, Double, Boolean, Unit
op : +, *, ||, &&
def error(message: String): Nothing = throw new RuntimeException(message)
def divide(x: Int, y: Int): Int = if (y != 0) x / y else error("can't devide by zero")
Nothing이 Int의 subtype이므로 전체 조건식의 return type Int에 합치 |
'독서관련 > Programming in Scala' 카테고리의 다른 글
Scala CH13. 패키지와 임포트 (0) | 2020.03.29 |
---|---|
Scala CH12. 트레이트 (0) | 2020.03.29 |
Scala CH10. 상속과 구성 (0) | 2020.03.29 |
Scala CH08. 함수와 클로저 (0) | 2020.03.29 |
Scala CH07. 내장 제어 구문 (0) | 2020.03.29 |