[Kotlin] getter/setter를 설정해야 하는 귀찮음 제거 data class

in kotlin •  7 years ago 

안녕하세요. 자유입니다.

요즘 대세인 코트린학습중에 편리한 기능을 소개하고자 합니다.

Retrofit을 이용해서 json을 파싱하기 위해서는 DTO Pojo 클래스를 설정해야 합니다.

보통 Java에서 설정을 할때

class Artist{
private long id;

public Artist(long id) {
    this.id = id;
}

public long getId() {
    return id;
}

public void setId(long id) {
    this.id = id;
}

}

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Artist artist = new Artist(500);
    artist.getId();
}

}
보통 이렇게 class선언후 사용을 해야 합니다.

코트린은?

data class Artist(var id:Long)

class Request(val url : String){
fun run(){
val artist : Artist = Artist(500)
artist.id
}
}
끝...

data class로 선언만 해주면 생성자, getter,setter다 됩니다.

끝.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

setter 가 만들어지려면 val 대신 var 를 사용하면 되겠어요.
data class는 프로퍼티에 대한 toString(), hashCode(), equals(), copy() 메소드를 자동으로 만들어주는 기능이에요.