我試圖完成的是有兩個類,一個非泛型和一個泛型。隱藏基類的屬性
我需要一個非通用類,因爲我計劃在List<T>
插入這個類的對象,並把它們插入下面的代碼
// Non-generic
public class Response
{
public object Value { get; }
}
// Generic
public class Response<T> : Response
{
public T Value { get; set; }
}
我想有一個List<Response>
,其中當我訪問這個對象我得到的Value屬性作爲對象。
但是,當我收到此對象作爲泛型,訪問T值屬性並隱藏對象的Value屬性。
我希望清楚,如果不是,請讓我知道。
編輯:這是一個測驗。因此,每個問題都有答案。例如在MultipleChoiceQuestion中,它可以具有幾個答案A,B,C,D作爲視圖形狀,或者可以是字符串或整數。
public abstract class Question
{
public Question(string questionText)
{
this.QuestionText = questionText;
}
public string QuestionText { get; set; }
}
// Non-generic
public class Response
{
public object Value { get; }
}
// Generic
public class Response<T> : Response
{
public T Value { get; set; }
}
public class MathProblemQuestion : Question
{
public Response Response { get; set; }
}
public class MultipleChoiseQuestion : Question
{
public Response Response { get; set; }
public IEnumerable<Response> PossibleResponses;
...
}
public class TrueOrFalse : Question
{
...
}
你可以嘗試新的關鍵字,但我不知道它是否會在這種情況下工作。 public new T Value {get;組; } –
3次閱讀,我沒有得到你想要的,你可以發佈一個僞代碼的例子,你試圖實現嗎? –
我編輯了我的問題..對不起,英語不是我的母語(順便說一句,我也是墨西哥人,塔毛利帕斯州) –