[kotlin] 코틀린 클래스의 타입 파라미터 사용법

코틀린에서 Type Parameter(타입 파라미터)를 사용하여 클래스를 선언하는 방법에 대해 알아보겠습니다.

1. 타입 파라미터 선언하기

타입 파라미터는 클래스 이름 뒤에 <T>와 같이 각괄호(< >) 안에 선언됩니다.

예를 들어, 다음과 같이 Box 클래스를 선언하고 타입 파라미터를 사용할 수 있습니다:

class Box<T>(t: T) {
    var value = t
}

위의 예제에서 Box 클래스는 타입 파라미터 T를 선언하고, 이를 생성자 매개변수 t와 연결합니다.

2. 객체 생성 시 타입 파라미터 지정하기

객체를 생성할 때에는 생성자에서 타입 파라미터를 지정해주어야 합니다.

예를 들어, Box 클래스를 사용하여 String 타입의 객체를 생성하는 예제는 다음과 같습니다:

val box: Box<String> = Box("Hello")

위의 예제에서 Box<String>Box 클래스의 타입 파라미터를 String으로 지정한 것이며, 생성자에 "Hello"를 전달하여 box 객체를 생성합니다.

3. 타입 파라미터 제약(Constraints)

타입 파라미터에 대한 제약을 걸 수도 있습니다. 예를 들어, 특정 인터페이스를 구현한 객체만을 제네릭으로 사용하고 싶을 때 제약을 걸 수 있습니다.

class Box<T>(t: T) where T : CharSequence {
    // 클래스 내용
}

위의 예제에서 Box 클래스는 TCharSequence 인터페이스를 구현한 타입만을 사용할 수 있도록 제약을 걸고 있습니다.

이상으로 코틀린 클래스의 타입 파라미터 사용 방법에 대해 알아보았습니다.

참고문헌: