[Kotlin in Action] 3. 클래스, 프로퍼티
- Coding/Kotlin
- 2022. 5. 13.
반응형
728x90
반응형
클래스 선언
- Kotlin은 기본적으로 public class가 생성된다.
package _기본문법._4_클래스_프로퍼티
// default : public
class `4_클래스`(val name: String)
프로퍼티
package _기본문법._4_클래스_프로퍼티
class `5_프로퍼티` (
val name: String,
var isMarried: Boolean,
)
읽기 전용 프로퍼티
- 비공개 필드
- 필드를 읽는 단순한 공개 getter 를 만든다.
val name: String,
쓸 수 있는 프로퍼티
- 비공개 필드
- 필드를 읽는 공개 getter 를 만든다.
- 필드를 쓰는 공개 setter 를 만든다.
var isMarried: Boolean,
getter 메서드를 직접 생성할 수 있다.
package _기본문법._4_클래스_프로퍼티
import java.util.*
class Rectangle(val height: Int, val width: Int) {
val isSquare: Boolean
get() {
return height == width
}
}
프로퍼티 호출 예제
package _기본문법._4_클래스_프로퍼티
import java.util.*
class Rectangle(val height: Int, val width: Int) {
val isSquare: Boolean
get() {
return height == width
}
}
fun main(array: Array<String>) {
// 프로퍼티명을 사용해도 코틀린이 자동으로 게터를 호출해준다.
println(createRandomRectangle().isSquare)
}
fun createRandomRectangle(): Rectangle {
val random = Random()
// 코를린은 자바와 다르게 new 연산자를 쓰지 않는다.
return Rectangle(random.nextInt(), random.nextInt())
}
- 프로퍼티명을 사용하면 코틀린은 자동으로 getter를 호출해준다.
// 프로퍼티명을 사용해도 코틀린이 자동으로 게터를 호출해준다.
println(createRandomRectangle().isSquare)
- new 연산자를 쓰지 않는다.
// 코를린은 자바와 다르게 new 연산자를 쓰지 않는다.
return Rectangle(random.nextInt(), random.nextInt())
반응형
'Coding > Kotlin' 카테고리의 다른 글
[Kotlin in Action] 5. while과 for 루프, Map 이터레이션, in으로 원소검사 (0) | 2022.05.15 |
---|---|
[Kotlin in Action] 4. enum 과 when, 클래스 계층과 스마트 캐스트 (0) | 2022.05.14 |
[Kotlin in Action] 2. 변수, 문자열 템플릿 (0) | 2022.05.12 |
[Kotlin in Action] 1. Hello Kotlin 기본 코드 분석하기 (0) | 2022.05.11 |
[Kotlin] 인텔리J Kotlin 프로젝트 생성해보기 (2) | 2022.05.10 |