
확장 함수fun String.twicePrint() { println(this) println(this)}fun main() { val str = "Hello World" str.twicePrint()}// Hello World// Hello World 일반적으로 클래스, 인터페이스에 기능을 추가하고 싶다면 상속 혹은 디자인 패턴을 통해 처리를 해줘야했습니다.하지만 위 예제는 String이라는 클래스에 twicePrint라는 메서드를 추가했습니다.직접적으로 String 클래스를 수정한 것이 아닌 추가적인 선언만 했습니다. 이러한 기능을 코틀린에서는 확장 함수라고 합니다.open class Shapeclass Rectangle: Shape()fun Shape.getName() = "S..