디자인 패턴 - 데코레이터

상속의 핵심 장식 패턴은 추상 클래스, 상속 및 구성 또는 조합입니다!

그것은 중첩 된 레이어를 사용합니다 :

BaseCharacter 문자 = 새로운 마법사 (); 
문자 = 새로운 BaseDecorator (문자); // 
문자 = 새로운 DecoratorHelmet (문자); // 
문자 = 새로운 DecoratorShoulder (문자); // 
문자 = 새로운 DecoratorBreastplate (caracter); 
문자 = 새로운 DecoratorCuish (문자); 
문자 = 새로운 DecoratorGlove (문자);

당신은 그것을 작성하는 체인 수 있습니까?

 공공  클래스 BaseDecorator : BaseCharacter 
    { 
        개인 BaseCharacter _BaseCharacter = 널 (null) ;
        공개 BaseDecorator (BaseCharacter 문자) 
        { 
             ._BaseCharacter = 문자; 
        } 

        공공  재정의  무효 쇼 () 
        { 
            ._BaseCharacter.Show (); 
        } 
        공개 BaseDecorator와 장식 <T> () 여기서 T : BaseDecorator 
        { 
            창 (T) Activator.CreateInstance로 (대해서 typeof (T), 새로운 객체 []이 { }); 
        } 
    }

이 묶여 수 있습니다!

BaseCharacter 문자 = 새로운 마법사 (); 

 문자 = 새로운 BaseDecorator (문자) .Decorat <DecoratorHelmet> ()와 장식 <DecoratorCuish> ().; // 
 character.Show ();

 

추천

출처www.cnblogs.com/qgbo/p/11516662.html