728x90
반응형
SMALL
안녕하세요! 프뚜입니다.
객체 지향 프로그래밍에서 다형성의 특별한 경우로 다른 연산자들이 함수 연사자를 통해서 구현을 할 때를 말합니다. +, - 등 과 같은 연산자가 어떤 값과 함께 사용하느냐에 따라서 다르게 동작할 수 있도록 그것을 커스터마이징 할 수 있습니다.
[개발 환경]
- OS: Windows 10 64bit
- JAVA: 11
Calculator Class 생성하기
data class Calculator(val param: Int) {
operator fun plus(calculator: Calculator): Calculator {
return Calculator(param + calculator.param)
}
operator fun inc(): Calculator {
return Calculator(param + 10)
}
operator fun dec(): Calculator {
return Calculator(param - 10)
}
}
계산기로 연산자 오버로딩을 합니다. (plus)
Plus Overloading
위 계산기에서 plus를 operator를 통해 overloading을 합니다.
val x: Calculator = Calculator(10)
val y: Calculator = Calculator(20)
println("[LOG]: ${x + y}")
상단에 나와있는 표 기준 규격으로 위와 같은 방법으로 오버로딩할 수 있습니다.
해당 소스는 GitHub에서 받을 수 있습니다. (commit message와 게시글 제목은 동일합니다.)
https://github.com/JeongSeongSoo/tistory_kopring.git
728x90
반응형
LIST
'프로그램 > KOTLIN' 카테고리의 다른 글
[Kotlin] 코틀린에서 날짜 계산하기 (Date, Calendar) (2) | 2023.01.01 |
---|---|
[Kotlin] 코틀린에서 레트로핏2(retrofit2) 설정 및 사용하기 (4) | 2022.12.26 |
[Kotlin] 코틀린의 Scope Function (let, run, with, also, apply) (2) | 2022.12.14 |
[Kotlin] 코틀린의 NPE (Null Point Exception) 처리 방법 (2) | 2022.12.11 |
[Kotlin] 코틀린의 함수 (fun) (1) | 2022.12.10 |