using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DesignPatterns
{
public class Composite
{
public Composite()
{
Console.WriteLine("I am Composite class constructor");
}
public void add()
{
Console.WriteLine("Added to Composite class");
}
}
public class Component
{
public Component()
{
Console.WriteLine("I am Component class constructor");
}
public void add()
{
Console.WriteLine("Added to Component class");
}
}
}
위 코드에서 추가 기능을 호출하려고합니다. 나는 인터페이스를 사용하고 싶지 않다.C에서 매개 변수로 제네릭 사용 #
이것은 컴파일러 오류입니다. 이 방법으로 가능하지 않다면 여기 클래스 인스턴스을 어떻게 사용합니까? (인터페이스와 비슷한 제네릭을 사용하려고했습니다). 가능하지 않다면 매개 변수로 제네릭을 사용하는 것이 무엇입니까?
:
그런 다음 당신은 일을 액세스하기 위해 인터페이스를 사용할 수 있을까? 대안 (공유 된, 아마도 추상적 인 기본 클래스 사용)은 사실 더 많은 방해물입니다. –
@ FrédéricHamidi, 나는 단지 제네릭을 배우려고 노력하고 있습니다. 따라서 제네릭을 메서드의 매개 변수로 사용하는 것이 무엇인지 알아 내려고합니다. (어떻게 여기에 클래스 인스턴스를 사용할 수 있습니까?) – SHRI
글쎄, 적절한 대답이 될 것입니다. * 일반적인 메소드 매개 변수는 여기에 필요하지 않습니다. (실제로 그런 식으로 사용되는 것은 아닙니다) *. 일반적인 메서드 매개 변수는 메서드에서 generic * types * (* Enumerable.Select() (http://msdn.microsoft.com/en-us/library/vstudio/bb548891.aspx) 예제 참조)를 가져 오거나 반환 할 때 실제로 빛납니다.). –