Skip to content
Beside the Wheel
Search
Ctrl
K
Cancel
Email
GitHub
Select theme
Dark
Light
Auto
공부
(5)
spot 인스턴스에서 서버 가용성 개선하기
eBPF로 서버 성능 Profiling하는 법: Pyroscope의 구현 살펴보기
정수론부터 RSA까지
strace로 shaka-packager 버그 추적
Kubernetes The Hard Way
TIL
(937)
AI
(43)
DevOps
(230)
Network
(61)
OS
(155)
개발
(113)
과학
(1)
데이터베이스
(64)
서버
(72)
수학
(20)
알고리즘
(24)
암호학
(32)
언어
(95)
컴퓨터구조
(3)
코드
(24)
독후감
(43)
과학
(1)
사회
(2)
산문
(3)
소설
(12)
인문
(11)
자기계발
(7)
철학
(7)
생각
(6)
고민
변화에 대하여
의식의 영역에 대하여
본질을 보려면
짧은 생각들
소유냐 존재냐
회고
(14)
2022.03-04 대덕소마고 입학소감/다짐
2022.05-08 프로젝트와 인간관계
2022.09-2023.02 불안과 판단
2023.03-07 DMS 리더 회고
2023.08-11 나는 누구인가?
2023.12 더 많은 걸 배우기 위한 경험
2024.01-02 회사 인턴 회고
2024.03-04 고3 근황
2024.05-07 고등학교 마무리
2024.08-12 첫 회사
2025.01-03 입출력
2025.03-08 효능감이란 무엇일까
2025.09-12 연말회고
2026.01-08 담론
Email
GitHub
Select theme
Dark
Light
Auto
태그: 클래스
총 8개의 글이 있습니다.
@JvmField
클래스
2024. 3. 23.
`@JvmField`는 get/set을 생성하지 말라는 의미이다. 다음 코틀린 코드에서 프로퍼티 var barSize는 getter/setter를 생성한다. kotlin class Bar { var barSize = 0 } 자바로 변환해보면 getter/setter가 생성된 것을 볼 수 있다. java public final class Bar { private int barSize; public final int getBarSize() { return this.barSize; } public final void setBarSize(int var1) { this.barSize = var1; } } 이번엔 `@JvmFiel
@JvmStatic
클래스
2024. 3. 23.
함수와 프로퍼티에 static 하게 접근할 수 있도록 추가적인 메서드 또는 getter / setter 를 생성한다. 다음 Bar 클래스는 barSize라는 변수를 companion object에 선언함으로써, 전역변수를 만들었다. kotlin class Bar { companion object { var barSize : Int = 0 } } 자바로 변환해보면 Bar클래스에 barSize는 선언되었지만 getter/setter는 Bar.Companion 클래스에 등록된 것을 볼 수 있다. java public final class Bar { private static int barSize; public static final class Com
Object
클래스
2024. 3. 23.
코틀린에서 클래스를 정의하는 키워드는 class이다. 하지만 간혹 object 키워드로 클래스 정의하는 경우를 볼 수 있다. object로 클래스를 정의하면, 싱클턴(Singleton) 패턴이 적용되어 객체가 한번만 생성되도록 한다. 코틀린에서 object를 사용하면 싱글톰을 구현하기 위한 Boiler plate를 작성하지 않아도 된다. 또는, 익명 객체를 생성할 때 쓰이기도 한다. object의 용도 싱글턴 클래스로 만들 때 익명 클래스 객체를 생성할 때 싱글턴 클래스 정의를 위한 Object 아까도 말했듯, object로 싱글턴 클래스를 정의할 수 있다. 원래 클래스를 정의할때 class가 있는 자리에 object를 입력해주면 이 클래스는 싱글턴으로 동작하게 된다. kotlin objec
Sealed Class, interface
클래스
2024. 3. 23.
Sealed Classe 와 Enum Classe 의 공통점 Sealed Classe와 Enum Class는 모두 하나의 클래스로 여러 가지 상태를 열거할 때 사용한다. 예를 들어, API 통신 결과를 핸들링하고 싶을 때 사용하는데 sealed class 경우 아래와 같이 소스코드를 작성한다. 예를 들어, sealed class를 사용하면 다음과 같이 API 통신 결과를 핸들링 하기 위해 사용할 수 있다. kotlin sealed class Resource(val data: T? = null, val message: String? = null) { class Success(data: T) : Resource(data) class Loading(data: T? = null) : Reso
생성자
클래스
2024. 3. 23.
생성자 주 생성자 (Primary Constructor) 코틀린에선 클래스를 선언하는 동시에 주생성자를 만든다. 주 생성자는 생성자 파라미터를 지정하고 그 생성자 파라미터에 의해 초기화되는 프로퍼티를 정의하는 두 가지 목적으로 쓰인다. (주 생성자에 넣는 파라미터는 자동으로 필드에 추가된다.) kotlin class User constructor(val username: String) constructor 키워드 생략 kotlin class User(val username: String) 접근 제어자 kotlin class User private constructor(val username: String) 접근 제어자를 설정하는 경우엔 `const
코틀린에서의 Static
클래스
2024. 3. 23.
코틀린에는 static 키워드가 없다. 자바와 같이 정적 변수 혹은 메서드를 사용하려면 다른 방법을 사용해야한다. 클래스 외 필드 선언 java package foo.bar; class Foo { public static final String BAR = "bar"; public static void baz() { // Do something } } 자바에서 static을 사용해서 위와 같이 작성해야할떄, 코틀린에선 이렇게 사용할 수 있다. kotlin package foo.bar const val BAR = "bar" fun baz() { // Do something } 위와 같이 Foo.kt 파일에 정의한 속성 및 함
클래스 상속
클래스
2024. 3. 23.
상속은 클래스의 기능을 확장하고자 할때 현재의 클래스의 기능을 모두 가지고 자신만의 기능이 추가된 새로운 클래스를 정의 하는 방법이다. 따라서 상속을 하게 되면 클래스가 상, 하의 계층구조를 가지게 된다. 코틀린에서 모든 클래스는 공통의 상위클래스(superclass)로 Any 클래스를 가진다. 클래스에 상위 클래스를 선언하지 않아도 기본적으로 Any가 상위 클래스가 된다. 마치 JAVA에서 Object가 클래스의 기본 상위 클래스가 되는 것괴 비슷하다. 하지만 클래스 내용이 같지는 않다. Any와 Object 비교 Kotlin의 Any보다 Java의 Object가 가지는 메서드의 수가 더 많다. kotlin public open class Any { public open
필드와 접근자 메서드
클래스
2024. 3. 23.
주 생성자를 만들면 클래스의 필드가 알아서 생성된다. kotlin class User(var username: String) 정말 간단하다! 접근자 메서드인 `getter`와 `setter`는 코틀린이 알아서 만들어준다. kotlin class User( var name: String val age: Int ) 읽기 전용 필드를 만들 수도 있다. `var` 대신 `val`을 앞에 붙여 선언하면, getter 함수만 생성된다. val은 수정할 수 없는 필드기 때문에, final과 비슷하다. 필드에 접근할 때는 그냥 변수에 접근하듯이 사용하면, 코틀린에서 내부적으로 접근자 메서드를 사용하는 것 처럼 작동한다. kotlin class User(