填充基类和子类?

时间:2010-09-06 06:06:09

标签: c# .net inheritance

我需要在现有类中添加一些新字段及其所有现有字段/属性。

因此,每当我的派生类被DAL填充时,我也将填充基类的所有字段。目前,我这样做但不确定这是正确的方法吗?请举个例子。另外,我不确定每次初始化派生类时基类对象是否都是新的?

public class Employee
    {
        private int _id;
        private int _name;
        public int ID
        { 
            set { _id=value;}
            get { return _id;}
        }
        public int Name
        { 
            set { _name=value;}
            get { return _name;}
        }
        protected void SetName ()
        {
            _name=value;
        }
        protected void SetID()
        {
            _id=value;
        }
    }
public class EmployeeWithDepartmentName:Employee
        {
           private string _deptName;
           public string DeptName 
            {
                set { _deptName=value; }
            }
            public setBaseEmpName()
            {
               base.SetName();
            }
        public setBaseID()
            {
               base.SetID();
            }
        }

1 个答案:

答案 0 :(得分:1)

基类中的所有内容都可以从派生类中自动访问而无需任何操作,只需直接使用属性/方法名称。

public class MyBase
{
    public string UserName {get;set;}
}

public class MyClass : MyBase
{
  public void DoSomething()
  {
     Console.WriteLine("UserName: {0}", UserName);
     UserName = "Anders";
  }
}

你也可以这样做:

MyClass myClass = new MyClass();
myClass.UserName = "Rune";

受保护意味着只有派生类才能访问属性/方法。公共意味着每个人都可以访问属性/方法。

我也不确定每次初始化派生类时基类对象是否都是新的?

这不是两个对象,它是从两个不同的类创建的一个对象(这就是继承的工作原理)。

阅读有关继承的文章:http://www.csharp-station.com/Tutorials/lesson08.aspx