Archives
Recent Posts
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Today
Total
관리 메뉴

안드로이드 개발자의 창고

[Kotlin 18일차] 확장 함수(Extension Function) 본문

Computer/Kotlin

[Kotlin 18일차] 확장 함수(Extension Function)

Wise-99 2023. 5. 23. 19:38

 

 

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT

 

 

 

📖 확장 함수

  • 기존 클래스에 새로운 함수를 추가하는 개념이다.
  • 추가된 메서드는 같은 프로그램 내에서만 사용이 가능하다.
  • 자바 코드로 변경될 때 객체의 ID를 받아 사용하는 코드로 변경된다.
  • 확장함수 정의 : 클래스명.추가할 메서드 이름

 

 

 

📖 예제 코드

fun main() {
    val str1 = "abcd"

    println(str1.getUpperString())
    println(str1.printString())
}

fun String.getUpperString() : String {
    return this.uppercase(Locale.getDefault())
}

fun String.printString() {
    println("문자열 :  $this")
}

✔️ 코드 해석

  • fun String.getUpperString() : String { ... }
    • String 클래스의 확장함수이다.
    • String 객체의 ID값을 받아 문자열을 모두 대문자로 바꿔 반환한다.
  • fun String.printString() { ... }
    • String 클래스의 확장함수이다.
    • this로 String 객체의 ID 값을 받아 문자열을 출력한다.