본문 바로가기

개발&프로그래밍104

[kotlin] 확장 기능(Extensions) Kotlin의 확장 기능Kotlin의 확장(Extensions) 기능은 기존 클래스나 인터페이스에 새로운 기능을 추가할 수 있게 해주는 강력한 도구입니다.이 가이드에서는 Kotlin 확장의 다양한 측면을 상세히 살펴보겠습니다. 확장 함수 (Extension Functions)확장 함수를 사용하면 기존 클래스에 새로운 메서드를 추가할 수 있습니다. 이는 특히 서드파티 라이브러리의 클래스를 수정해야 할 때 유용합니다.fun MutableList.swap(index1: Int, index2: Int) { val tmp = this[index1] // 'this'는 리스트를 가리킵니다 this[index1] = this[index2] this[index2] = tmp}val list = muta.. 2024. 8. 14.
[kotlin] 가시성 수정자(Visibility modifiers) Kotlin의 가시성 수정자Kotlin에서 가시성 수정자(visibility modifiers)는 코드의 캡슐화와 접근 제어를 위한 핵심 기능입니다.이 가이드에서는 Kotlin의 가시성 수정자에 대해 상세히 알아보겠습니다.   가시성 수정자 기본 (Visibility Modifiers Basics)Kotlin에는 네 가지 가시성 수정자가 있습니다: private, protected, internal, public. 기본 가시성은 public입니다.이 수정자들은 클래스, 객체, 인터페이스, 생성자, 함수, 프로퍼티 및 그 세터에 적용될 수 있습니다. 게터는 항상 해당 프로퍼티와 동일한 가시성을 가집니다. 패키지 레벨 선언 (Package-Level Declarations)함수, 프로퍼티, 클래스, 객체, .. 2024. 8. 13.
[kotlin] 인터페이스(interface) Kotlin의 인터페이스 Kotlin에서 인터페이스는 객체 지향 프로그래밍의 핵심 요소 중 하나입니다. 이 가이드에서는 Kotlin 인터페이스의 다양한 측면을 상세히 살펴보겠습니다.  인터페이스 기본 (Interface Basics)Kotlin의 인터페이스는 추상 메서드의 선언뿐만 아니라 메서드 구현도 포함할 수 있습니다. 추상 클래스와 다른 점은 인터페이스가 상태를 저장할 수 없다는 것입니다. 인터페이스는 interface 키워드를 사용하여 정의합니다:interface MyInterface { fun bar() fun foo() { // 선택적 본문 }}이 예제에서 bar()는 추상 메서드이고, foo()는 기본 구현을 제공하는 메서드입니다. 인터페이스 구현 (Implement.. 2024. 8. 13.
[kotlin] 프로퍼티(Properties) Kotlin의 프로퍼티Kotlin에서 프로퍼티는 클래스의 핵심 요소 중 하나입니다.이 가이드에서는 Kotlin 프로퍼티의 다양한 측면을 상세히 살펴보겠습니다.    프로퍼티 선언 (Declaring Properties)Kotlin에서 프로퍼티는 가변(mutable)과 읽기 전용(read-only) 두 가지로 선언할 수 있습니다:class Address { var name: String = "Holmes, Sherlock" // 가변 var street: String = "Baker" var city: String = "London" var state: String? = null val zip: String = "123456" // 읽기 전용} 프로퍼티를 사용하려면 단순히 이름으.. 2024. 8. 13.