[kotlin]Class

2018. 6. 15. 16:54kotlin-이론

Class



class 선언하기


클래스는 class 키워드로 선언한다 


1. 클래스 이름


2. 클래스 헤터(매개 변수, 기본 생성자)


3.클래스 body(중괄호{})


class Invoice {
   
}


헤더와 바디는 옵션이고, 바디가 없으면 {} 생략가능하다. 


class Empty


기본생성자


-클래스 별로 1개만 가질 수 있음

-클래스 헤더의 일부 

-클래스 이름 뒤에 작성


class Invoice constructor(name:String){

}

위와 같이 기본생성자를 만들 수 있다. 그리고 

어노테이션이나 접근지정자가 없을 때는, 기본생성자의 constructor 키워드를 생략가능하다. 

class Invoice (name:String){

}class Customer public @Inject constructor(name:String){}으로 사용할 때는 constroctor생략 불가 

 기본생성자-초기화 


기본생성자는 초기화 블럭안에서만 코드를 가질 수 있다. 

초기화 블럭은 

init {


} 형태로 만들어 줄 수 있다. 


보조 생성자


클래스 별로 여러 개를 가질 수 있음 

constructor 키워드로 선언 


- 클래스가 기본생성자를 가지고 있다면 , 각각의 보조 생성자들은 기본생성자를 직접 OR 간접적으로 위임 해주어야한다. 


-this를 이용해서 위임해줄 수 있다. 


class test3 constructor(name:String){
    constructor(name:String, parent:test3):this(name){ //기본생성자를 직접 위임해주고 있다. 
        
    }
    constructor():this("홍길동", test3()){ //기본생성자를 간접적으로 위임해주고 있다. 이곳의 this는 바로 위의 constructor를 가리키고 있다.
        
    }
}


'kotlin-이론' 카테고리의 다른 글

[kotlin] kotlin 강의 properties1  (0) 2018.06.16
[kotlin] Class 상속  (0) 2018.06.15
[kotlin]Return and Jumps (break 문, continue 문, return 문)  (0) 2018.06.15
[kotlin]코틀린 controlFlow  (0) 2018.06.15
[kotlin]코틀린 BasicType  (0) 2018.06.14