공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
Delegate
일반적으로 메소드의 파라미터는 기본 타입 or 객체 타입입니다.
int method(int x, int y){}
void method(AnyClass anyClass){}
Delegate 는 메소드를 다른 메소드로 전달할 수 있도록 하기 위하여
만들어진 개념입니다.
=====================================================
Delegate 정의
기본적인 정의는 추상메소드와 동일합니다. 추가적으로 반환형 앞에 delegate 키워드가 붙습니다.
정의할 때 중요한 것은 입력 파라미터와 반환 타입입니다.
어떠한 메소드가 delegate 메소드 원형과 일치한다면
그 메소드는 해당 delegate에서 사용될 수 있습니다.
그리고 Delegate의 파라미터로는 선언한
Deleagte 와 파라미터가 일치하는 메소드를 넣어주면 끝입니다.
=====================================================
=====================================================
Delegate 호출
메소드의 파라미터로 사용된 delegate 를 호출하려면
delegate 객체의 Invoke() 나 BeginInvoke() 메소드를
사용하여 호출하며, 생략 가능합니다.
=====================================================
=====================================================
Delegate 사용 예제
=====================================================
'C#' 카테고리의 다른 글
C#문법-20 : Delegate 2 - 메소드의 파라미터로 delegate 사용하기 (0) | 2019.06.12 |
---|---|
C#문법-18 : 인터페이스 (0) | 2019.06.12 |
C#문법-17 : 제네릭 (0) | 2019.05.24 |
C#문법-16 : 속성과 static 클래스, 메소드, 필드, 속성 (0) | 2019.04.25 |
C#문법-15 : 클래스 상속 (0) | 2019.04.25 |