c# - C#中的类和基类继承

标签 c# inheritance

我在 C# 中有一个这样的类:

public class BarChart
{
    public BarData BarChartData;
    public BarStyle BarChartStyle;

    public BarChart(BarData data, BarStyle style)
    {
        this.BarChartData = data;
        this.BarChartStyle = style;
    }

    string _uniqueName;
    public string UniqueName
    {
        get { return this._uniqueName; }
        set { this._uniqueName = value; }
    }
    string _rowNumber;
    public string RowNumber
    {
        get { return this._rowNumber; }
        set { this._rowNumber = value; }
    }

我想创建一个名为 Chart 的类,它具有 BarChart 类所具有的所有属性。例如:

Chart someChart = new Chart(BarChart);
string name = someChart.UniqueName

我对 C# 比较陌生,继承的概念对我来说有点陌生。在一天结束时,我将有多种不同的图表类型,如折线图、条形图等,但我也希望能够移动它们并像这样对它们进行排序:

List<Chart> groupedCharts = listOfCharts
.GroupBy(u => u.RowNumber)
.Select(grp => grp.ToList())
.ToList();

...因此想到将它们放入通用 Chart 类中以便于与 LINQ 一起使用.

我将如何设置它?

最佳答案

创建一个抽象图表类:

abstract class Chart
{
    // Shared properties
}

然后继承它:

class BarChart : Chart
{
    // Bar chart properties
}

然后您可以将其创建为:

Chart someChart = new BarChart();

关于c# - C#中的类和基类继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33698676/

相关文章:

c# - XML元素移除,只需要删除一个非父元素

c# - 获取密集矩阵元素的最小值和最大值

c++ - 数据类型 inst 转换正确吗?

python - 从列表中解压的类继承

c# - SQL 中的 XML 字段

c# - 空对象不能转换为值类型

c# - EF Core 2.1 为一对多关系选择字段

c++ - 将任何派生类使用的函数放在基类中?

c++ - 前缀和后缀运算符继承

python - 使用 selenium webdriver 作为基类 python