backing field 2

[Kotlin] 인터페이스의 프로퍼티 & 접근자에서 backing field 에 접근, 접근자의 가시성

Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금 참조하여 정리한 글입니다. 인터페이스에 선언된 프로퍼티 코틀린에서는 인터페이스에 추상 프로퍼티 선언을 넣을 수 있다. interface User { val nickname: String } `User` 인터페이스를 구현하는 클래스는 `nickname` 의 값을 얻을 수 있는 방법을 제공해야 한다. 인터페이스에 있는 프로퍼티 선언에는 어떠한 상태를 포함할 수 없다. 즉, backing field 에 대한 정보가 들어있지 않다. 프로퍼티 선언을 가진 인터페이스 구현 인터페이스를 구현하는 방법을 코드로 보자 class PrivateUser(override val nickname: String) : User class Su..

Kotlin 2024.01.09

[Kotlin] 클래스와 프로퍼티 기초

Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금 참조하여 정리한 글입니다. 이번에는 클래스를 선언하는 기본 문법, 그리고 프로퍼티를 다룬다. JavaBean 클래스를 코틀린 코드로 보기 먼저 간단한 `JavaBean` 클래스 `Person` 을 봅시다. public class Person { private final String name; public Person(String name) { this.name = name; // 필드가 늘어날 수록 생성자 바디에 비슷한 코드가 반복적으로 들어간다. } public String getName() { return name; } } `Person` 클래스는 필드를 오직 `String` 타입의 `name` 만을 가진다. 만..

Kotlin 2023.12.27