[kotlin] 코틀린의 코틀린의 객체지향 데이터 타입 처리 방법 in 코틀린
코틀린은 객체지향 프로그래밍 언어이며, 데이터 타입 처리를 위한 다양한 방법을 제공합니다. 이 포스트에서는 코틀린에서의 객체지향 데이터 타입 처리 방법에 대해 알아보도록 하겠습니다.
1. 클래스와 객체
코틀린에서 클래스는 객체를 정의하는 템플릿이며, 객체는 클래스의 인스턴스입니다. 객체는 속성(멤버 변수)과 메서드(함수)로 구성되어 있습니다.
class Person {
var name: String = ""
var age: Int = 0
fun speak() {
println("Hello, my name is $name")
}
}
val person1 = Person()
person1.name = "Alice"
person1.age = 25
person1.speak()
2. 데이터 클래스
코틀린에서는 데이터를 담는 목적의 클래스를 간단하게 선언할 수 있는 데이터 클래스를 제공합니다. 데이터 클래스는 data class
키워드를 사용하여 선언할 수 있으며, 속성에 대한 getter/setter와 toString()
, equals()
, hashCode()
등의 메서드가 자동으로 생성됩니다.
data class User(val name: String, val age: Int)
val user1 = User("Bob", 30)
val user2 = User("Bob", 30)
println(user1 == user2) // true
3. 상속
코틀린에서는 클래스간의 상속을 지원하며, open
키워드를 통해 상속이 가능한 클래스를 선언할 수 있습니다. 이를 통해 부모 클래스의 속성과 메서드를 자식 클래스에서 재활용할 수 있습니다.
open class Animal(val name: String) {
open fun makeSound() {
println("The animal makes a sound")
}
}
class Dog(name: String) : Animal(name) {
override fun makeSound() {
println("The dog barks")
}
}
val dog = Dog("Fido")
dog.makeSound()
결론
코틀린에서는 객체지향 데이터 타입 처리를 위해 클래스와 객체, 데이터 클래스, 상속 등 다양한 기능을 제공합니다. 이러한 기능들을 활용하여 손쉽게 객체지향 프로그래밍을 구현할 수 있습니다.
참고 문헌: 코틀린 공식 문서