Deperecated/Kotlin

코틀린 - 제네릭

누알라리 2020. 2. 5. 16:34

1. 개념

- 매개 변수나 반환 타입을 유동적으로 할 때 사용하는 개념.

 

fun main(args : Array<String>)
{
  // 객체 생성할 때 전달해주는 타입으로 타입이 정해짐.
  var t1 = TestClass1<String>()
  t1.testmethod1("문자열1");

  var t2 = TestClass1<Int>();
  t2.testmethod1(100);

  var t3 = TestClass2("초기화");
  t3.test("문자열");
  println(t3.value1);

  var t4 = TestClass3<Int, String>()
  t4.test2(100, "안녕");
}

class TestClass1<T>
{
  fun testmethod1(a1 : T)
  {
    println("a1:" + a1);
  }
}

// 생성자를 이용해서 타입 결정
class TestClass2<T>(a : T)
{
  var value1 = a;

  fun test(a1 : T)
  {
    println("a = " + a1);
  }
}

// 두 개 이상의 제네릭
class TestClass3<A, B>
{
  fun test2(a1 : A, a2 : B)
  {
    println(a1);
    println(a2);
  }
}

 

'Deperecated > Kotlin' 카테고리의 다른 글

코틀린 - 열거형  (0) 2020.02.05
코틀린 - 중첩 클래스  (0) 2020.02.05
코틀린 - 클래스  (0) 2020.02.05
코틀린 - 조건문, 분기문, 반복문  (0) 2020.02.05
코틀린 - 고차함수와 람다식(기본 3에 이어서..)  (0) 2020.02.05