2024/12/05 2

[Kotlin] Sealed Class란?

개요필자는 코딩하시는 각별님 유튜브를 보고 있는데 거기에 sealed class가 나와 궁금해 포스팅을 한다. 뭔가 알아야 할 것 같아서..Sealed Class란?sealed는 자기 자신이 추상 클래스이며 자신을 상속받는 여러 서브 클래스들을 가질 수 있다. 이는 enum 클래스와는 달리 상속을 지원하기 때문에 상속을 활용한 다양한 작업들을 할 수 있음을 의미한다. 또한 자신을 상속받는 서브 클래스의 종류를 제한할 수 있다.Sealed Class는 여러 가지 특징이 있다. Sealed Class 클래스의 서브 클래스들은 반드시 같은 파일 내에만 선언해야 한다. Sealed Class는 기본적으로 abstract 클래스이며 private 생성자만 갖게 된다. 상태가 바뀌지 않는 경우는 object 사용을..

Kotlin 2024.12.05

[Kotlin] 싱글톤 패턴(Singleton Pattern), @JvmStatic, Object Class

개요Kotlin에서는 자바의 static 키워드와 new 키워드가 없다고 들었다. 그런데 어떻게 static과 같은 기능을 구현할까? 라는 궁금증에 포스팅해본다.싱글톤 패턴이란?싱글톤 패턴은 어떤 클래스의 인스턴스가 오직 하나임을 보장하며 애플리케이션 시작부터 종료까지 고정된 메모리 영역을 가진다. 이로 인해 메모리를 효율적으로 사용할 수 있다. 하위 레이어들이 인스턴스를 참조하여 사용하는 방식이고 하나의 인스턴스만 필요할 때 사용한다. 자, 그럼 이런 싱글톤 패턴은 왜 사용할까? 정해진 메모리 영역을 사용하기 때문에 해당 객체에 접근할 때 메모리 낭비를 방지할 수 있다. 여러 메모리 영역에 똑같은 인스턴스가 생기는 것을 방지할 수 있으며 전역 인스턴스이기 때문에 공유(static)가 쉽다. 즉, 메모리..

Kotlin 2024.12.05