Programming/C# - Window

C#/ 일반화(generic), 인덱서(indexer)k

esoog Polaris 2023. 6. 28. 11:51
반응형

# 근데 제네릭을 왜 쓰지?

 

1. 데이타 요소 타입을 확정하지 않고 이 데이타 타입 자체를 타입파라미터(Type Parameter)로 받아들이도록 클래스를 정의한다.(유연성)

2. 이렇게 정의된 클래스 즉 C# 제네릭 타입을 사용할 때는 클래스명과 함께 구체적인 데이타 타입을 함께 지정해 주게 된다.(타입안정성)

3. 이렇게 하면 일부 상이한 데이타 타입 때문에 여러 개의 클래스들을 따로 만들 필요가 없어지게 된다.(코드 재사용성)

4. C# 제네릭은 이렇게 클래스 이외에도 인터페이스나 메서드에도 적용될 수 있다. (확장성)

 

 

 

 

 

 

# 이해를 위한 추가 예제 코드

*System.Collections.Generic 네임스페이스에 있는 모든 자료구조 관련 클래스들은 제네릭 타입이다.

컬렉션에서 많이 사용되는 것으로 알면 편하다.

 

List<string> nameList = new List<string>();
nameList.Add("홍길동");
nameList.Add("이태백");

Dictionary<string, int> dic = new Dictionary<string, int>();
dic["길동"] = 100;
dic["태백"] = 90;

 

728x90