본문 바로가기
반응형

2023년 이전/kotlin29

kotlin - 프로퍼티 (간단한 getter,setter 정리 및 추상 프로퍼티) [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 인터페이스 프로퍼티 코틀린에서는 인터페이스에 추상 프로퍼티 선언을 할 수 있습니다. interface User { val nickname: String } 위 User 인터페이스를 확장한 클래스는 nickname을 얻을 수 있는 방법을 제공해야합니다. 그리고 이 인터페이스의 프로퍼티 선언에는 필드나 게터 그리고 상태같은 정보가 들어 있지 않기 때문에 필드나 게터, 상태등을 저장 사용하기 위해서는 하위 클래스에서 상속받은 프로퍼티를 만들어야 합니다. 그럼 위의 내용을 기억하면서 그 사용 방법을 확인해 보겠습니다. interface User { val nickname: String.. 2020. 2. 24.
kotlin - 생성자 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 코틀린은 주 생성자와 부 생성자를 구분 합니다. 그리고 코틀린에서는 초기화 블록을 통해 초기화 로직을 추가 할 수 있습니다. 클래스 초기화 다음 클래스 선언을 보면 class User(val nickname: String) 중괄호( {} )가 없고 괄호( () ) 만 있습니다. 그리고 괄호 안에 val을 통해 String을 선언하고 있습니다. 위 처럼 클래스 이름 뒤에 오는 괄호로 둘러싸인 코드를 주 생성자(primary constructor)라고 부릅니다. 이 주 생성자는 생성자 파라미터를 지정하고, 그 생성자 파라미터에 의해 초기화 되는 프로퍼티를 정의하는 목적을 가집니다... 2020. 2. 21.
kotlin - 인터페이스, open, final, abstract, 가시성 변경자, 내부 클래스와 중첩 클래스, 봉인 클래스 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 이번에 정리한 내용이 정말 중요한 내용 중 하나라고 생각합니다. 왜냐면 coding을 좀 더 체계적으로 할 수 있도록 개념을 잡을 수 있기 때문입니다. 그래서 내용도 많치만 정독을 하는 것을 추천 드리겠습니다 .그럼 정리 시작하겠습니다. 인터페이스 코틀린의 인터페이스는 자바 8의 인터페이스와 비슷합니다. 코틀린 인터페이스 안에는 추상 메소드뿐만 아니라 구현이 있는 메소드도 정의 할 수 있습니다. 다만 아무런 상태(필드)는 들어갈 수 없습니다. 인터페이스 구현은 다음과 같습니다. interface Clickable { fun click() } 이 코드는 click이라는 추상 메소.. 2020. 2. 21.
kotlin - 로컬 함수와 확장 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 코딩을 할때 중복을 피하라는 말이 있습니다. 하지만 중복을 피하기 위해 메소드를 너무 나누면 코드 사이의 관계 파악이 어렵고 이해하기 힘들어 유지 보수가 힘들어 집니다. 그리고 inner class로 코드 안에 넣으면 코드는 깔끔해지지만 불필요한 준비 코드가 늘어납니다. 코틀린에서는 함수에서 추출한 함수를 원 함수 내부에 중첩시킴으로써 깔끔하게 코딩을 할 수 있습니다.(이를 로컬 함수라고 합니다.) 그럼 코컬 함수를 통해 어떻게 코드가 깔 끔해지는 확인해 보겠습니다. class User(val id: Int, val name: String, val address: String).. 2020. 2. 20.
반응형