728x90
반응형

6. 다형성의 경우 Interface와 추상 클래스를 예시로 들수 있을 것 같으며, 코드의 확장성이 더욱 좋아진다.

7. Override와 overload의 경우 Override는 부모클래스 속성의 재정의를 할 떄 사용되며, Overload의 경우 같은 메서드명이지만, 매개변수를 다르게 정의할 때 사용된다.

8.
확장 메서드는 기존 클래스나 구조체에 인스턴스 메서드처럼 보이도록 메서드를 추가할 수 있게 하는 기능이다.
실제로 어떻게 활용했냐 하면 
실제 Enum을 직접 object를 parsing하는 경우
(EnumName)Enum.Parse(typeof(EnumName),object.ToString); 같은 식으로 사용해야 하나
object에 ParseEnum확장 메서드를 구현하여 
object.ParseEnum<EnumName>()로 훨씬 간결하게 표현이 가능했다.

public static T ParseEnum<T>(this object value) where T : struct, Enum
{
    return Enum.TryParse(value.ToString(), out T result) ? result : throw new ArgumentException($"Invalid enum value: {value}");
}


9. 지금 실행하지 않고, 특정 시점에 실행되도록 함수를 등록만 해두는 것


10. 델리게이트란 메서드를 저장하는 하나의 데이터 타입이다. 메서드들을 저장해서 한번에 호출할 수 있는 강력한 기능이다.

=> 델리게이트는 메서드 참조를 변수처럼 저장하고, 필요할 때 호출할 수 있는 형식 안전한 함수 포인터입니다. 하나 이상의 메서드를 저장할 수 있고, 이를 통해 콜백 구조나 이벤트 시스템을 구현할 수 있습니다

728x90
반응형

'프로그래밍 공부 > TIL' 카테고리의 다른 글

2025-07-10 TIL  (0) 2025.07.10
2025-07-09 TIL  (0) 2025.07.09
2025-07-07 TIL(면접 준비)  (0) 2025.07.07
2025-07-03 TIL  (0) 2025.07.03
2025-07-02 TIL  (0) 2025.07.02