簡體   English   中英

具有相同屬性但類型不同的多個類

[英]Multiple classes with same properties but different types

我想創建一個 class 與另一個 class 具有相同的字段名稱,但具有不同的字段類型。 例如:

public class Core
{
    public float Temperature { get; private set; }
    public float Load { get; private set; }
    public float Clock { get; private set; }

...

我得到了上面的 class 並且我想要另一個 class 具有所有字段但在 boolean 類型。

public class CoreThreshold
{
    public bool Temperature { get; private set; }
    public bool Load { get; private set; }
    public bool Clock { get; private set; }
...

我這樣做的方式是像上面那樣硬編碼,想知道是否有更好的方法。

我想讓它 OOP 可訪問,而不是使用獲取字符串並返回值的方法。 也不能像 boolean 那樣將浮點值設為 1 或 0(實際類型不是浮點數)。

是否可以完成,或者唯一的選擇是對兩個類的每個細節進行硬編碼?

我不知道這是否會如你所願,但我會在黑暗中試一試。

您可以擁有一個支持Generic的基礎 class 。 例如:

public abstract class BaseCore<T>
{
    public T Temperature { get; protected set; }
    public T Load { get; protected set; }
    public T Clock { get; protected set; }
}

然后在此基礎上派生一些類:

public class Core : BaseCore<float>
{
}

public class CoreThreshold : BaseCore<bool>
{
}

因此,您所要做的就是向BaseCore添加另一個屬性,所有派生類都會自動獲取它。 您不必復制代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM