2022. 12. 4. 20:50ㆍ_Study/AndroidStudio
클래스와 생성자 🐇¸.•*¨*•¸.•*¨*•¸.•*¨*•¸.•*¨*•
해당 자료는 강의 학습 자료 입니다.
클래스 선언
클래스는 class 키워드로 선언하며, 클래스의 본문에 입력하는 내용이 없다면 {}를 생략할 수 있다.
클래스의 멤버는 생성자, 변수, 함수, 클래스로 구성한다. 속성은 getter setter을 자동생성할 수 있다.
생성자는 constructor라는 키워드로 선언할 수 있다.
객체를 생성해 사용하며 객체로 클래스의 멤버에 접근하고 객체를 생성할 때 new 키워드를 사용하지 않는다.
package com.example.ch3
fun main() {
var user = User("kim")
user.someFun()
}
class User{
var name = "kkang"
constructor(name : String) {
this.name = name
}
fun someFun(){
println("name : $name")
}
class SomeClass{}
}
주생성자
생성자는 주생성자와 보조 생성자로 구분한다.
주생성자 : constructor 키워드로 클래스 선언부에 선언한다. ex class User ()
주생성자 선언은 필수는 아니지만 클래스에 하나만 가능하다.
constructor 키워드는 생략할 수 있다.
주생성자의 본문 - init 영역 (초기화 블록)
- init 키워드를 이용해 주 생성자의 본문을 구현할 수 있다.
- init 키워드로 지정한 영역은 객체를 생성할 때 자동으로 실행된다.
생성자의 매개변수를 클래스의 멤버 변수로 선언하는 방법
- 생성자의 매개변수: 기본적으로 생성자에서만 사용할 수 있는 지역 변수
val 이나 var 키워드로 선언하면 클래스의 멤버 변수로 선언된다.
보조 생성자
보조생성자는 클래스의 본문에 constructor 키워드로 선언하는 함수
여러 개를 추가할 수 있다.
보조 생성자에 주생성자를 연결 : 클래스 내에 주 생성자가 있다면 this() 구문을 이용해 주생성자와 연결해야한다.
보조 생성자가 여럿일 때 생성자 연결
class User(name : String) {
constructor(name: String, count: Int):this(name){
}
constructor(name: String, count: Int, email: String):this(name,count){
}
}
fun main(){
val user2 =User2("kkang",10)
var user = User("kkang",1004, "email@")
}
'_Study > AndroidStudio' 카테고리의 다른 글
안드로이드 스튜디오 고차함수, 람다함수 (0) | 2022.12.05 |
---|---|
안드로이드 스튜디오 클래스를 재사용하는 상속 (0) | 2022.12.05 |
안드로이드 스튜디오 조건문과 반복문 (0) | 2022.12.04 |
코틀린 소스를 테스트하는 방법 main()/ 함수 실행방법 (0) | 2022.12.04 |
코틀린 언어 소개 / 변수와 함수 (0) | 2022.12.04 |