작성
·
110
0
안녕하세요 강의 잘 듣고있습니다.
class 에는 setter 와 getter 를 생성하지 않고
data class 에는 var 로 받을경우 setter 와 getter 가 생성되면 이외의 다른 메서들도 자동으로 생성이 된다고 하셨습니다.
그러면 class 는 더이상 사용하지 않나요 ?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
좋은 질문 주셨습니다. Kotlin에서 class
와 data class
는 각각의 사용 목적과 필요에 따라 다르게 사용됩니다.
일반 class
는 상태를 저장하는 객체를 정의할 때 사용되며, 필요에 따라 setter와 getter를 직접 구현해야 합니다. 이는 객체의 상태나 동작을 상세하게 제어하고 싶을 때 유용합니다.
반면, data class
는 데이터를 저장하고 이를 처리하는 데 초점을 맞추며, Kotlin이 자동으로 setter, getter 외에도 equals()
, hashCode()
, toString()
, copy()
등의 유용한 메서드를 생성해줍니다. 이로 인해 데이터를 다루는 객체를 쉽고 빠르게 정의할 수 있게 됩니다.
class
는 여전히 많은 곳에서 사용되며, 특히 비즈니스 로직이 포함되거나 상속과 같은 객체 지향 프로그래밍의 특징을 활용할 때 필요합니다. 따라서 class
와 data class
는 서로 다른 상황에서 각각의 장점을 발휘하기 위해 존재합니다.
즉, data class
는 데이터를 주고받거나 간단한 처리를 할 때 매우 유용하지만, 모든 경우에 일반 class
를 대체하지는 않습니다. 각각의 사용 상황을 고려하여 적절히 선택하여 사용해야 합니다.
질문에 도움이 되길 바라며, 추가적인 궁금증이 있으시면 언제든지 질문주세요.