▶ 클래스와 초기화
Person이라는 Class를 만들고 값에 파라미터 두개를 받도록 만들면 다음과 같이 만들 수 있다.
객체 생성 시, init을 통해 초기화를 해줄 수 있는데, 초기화는 해당 객체가 생성될 때 자동으로 호출된다. 따라서, 클래스가 생성될 때마다 받는 파라미터를 통해 정보를 출력하는 예제를 만들면 다음과 같다.
만약, 객체 생성 시에 디폴트값을 가지게끔 만들고 싶다면 다음과 같이 만들 수도 있다. 예시와 같이 lastName값만 지정해서 초기화를 할 수도 있다.
▶ 클래스 예제 1 (MobilePhone Class 만들기)
▶ Scope, Shadowing
함수나 객체를 실행하면서, 이미 선언한 변수에 대한 값을 변경할 수 있는데 이를 함수 밖 영역의 수가 가려진다(shadowing)하여 shadowing이라고 부른다. 예를 들면, a 파라미터를 받으면서 a 값을 초기화하는 함수 내에서 a값을 변경한다면, a값은 함수내에서 변경된 값으로 식을 연산한다.
만약, 함수 내에서 변수 b를 선언하고 밖에서 활용하면 어떨까? 이는 스코프 밖에 있어서 활용할 수 없다. 반대로 해당 함수를 포함하는 함수에서 변수 b를 선언하고 해당 함수 내에서 활용하는 것은 스코프 내에 있어서 활용할 수 있다. 즉, 선언한 변수가 유효한 영역을 "Scope"라고 한다.
'모바일 App 프로그래밍 > Kotlin' 카테고리의 다른 글
[Kotlin] OOP - 3 (0) | 2023.03.27 |
---|---|
[Kotlin] OOP - 2 (0) | 2023.03.27 |
[Kotlin] Nullable (0) | 2023.03.24 |
[Kotlin] 흐름 제어문 (if, when, while, for) (0) | 2023.03.24 |
[Kotlin] 산술 연산자 (Arithmetic Operators) (0) | 2023.03.13 |
댓글