2011-01-19 6 views
2

IoC 및 DI 토론의 모든 곳에서 코드 예제를 찾고 있는데, 일반적으로 메서드 호출처럼 보이는 부분에 <>을 구문에 사용합니다.이 구문은 무엇입니까 : "Component.For <IOutput>()"?

사람

  1. 이 무엇인지 언어 말해 줄 수, 및
  2. 날 코드 예제를 이해하는 데 도움이 충분히 구문을 설명합니다, 그래서 내가 기본 원리를 이해하도록 할 수 있습니다.
+0

필자는 PHP와 Python에 익숙해졌습니다. – keithjgrant

답변

2

이들은 프레임 워크에서 제네릭 지원의 일부입니다. 메소드를 사용하여 메소드 (또는 클래스)의 일부로 유형을 지정할 수 있습니다. 이것들을 타입 파라미터라고 부릅니다.

는 예를 들어 당신은 당신이 그것을 말에 그것을 받아 들여야 유형 의존하는 강력한 형식의 목록을 가질 수 있습니다

List<string> myList; 

이는 Add 기능에 string의 유형을 수신 할 수 있도록합니다. 이에 대한 클래스 정의 같은 뭔가을 보일 것이다 : 당신은 당신이 string의 유형을 기대하는 그에게 목록을 생성

public class List<T> 
{ 
    public void Add(T item) 
    { 

    } 
} 

. 위 클래스의 형식 매개 변수 T입니다. Add 메서드에서는 T 유형의 인스턴스 (이 경우에는 문자열)를 필요로합니다. 즉, List<string>에서 Add이라고하면 Addstring이 제공 될 것으로 예상됩니다. 사용자가 만든 유사 경우

는 :

List<bool> myOtherList; 

Add 방법은 bool 매개 변수를하지 않는 string 매개 변수를 기대하는 것이다.

1

1.) 언어는 C#과 유사하지만 참조/문맥이 없으면 100 % 확신 할 수 없습니다.

2.) C#을 사용하는 경우이 구문은 generics과 함께 사용됩니다.

+0

그래, 나는 그것이 C#이라고 의심하지만 확실하지 않았다. – keithjgrant

3

꺽쇠 괄호는 사용할 유형을 나타내는 데 사용됩니다. 컴파일시 안전을 보장합니다. 이것은 generics (C#)에 사용되는 구문입니다.

관련 문제