//公司
public class Company
{
//公司名称
public string CompanyName { get; set; }
.
.
.
}
//部门
public class Department
{
//部门id
public int DepartmentId { get; set; }
//部门名称
public string DepartmentName { get; set; }
.
.
.
}
//员工
public class Employee
{
//员工id
public int EmployeeId { get; set; }
//员工名称
public string EmployeeName { get; set; }
.
.
.
}
//部门
public class Department
{
//部门id
public int DepartmentId { get; set; }
//部门名称
public string DepartmentName { get; set; }
}
//财务部门,这里直接拼音干
public class CaiWuDepartment : Department
{
public void AddNewEmployee(Employee e)
{
....
}
}
//员工
public class Employee
{
//员工id
public int EmployeeId { get; set; }
//员工名称
public string EmployeeName { get; set; }
}
//员工为经理
public class JIngLiEmployee : DataNode
{
//也许经理就有提前下班的行为
public void TiqianXiaBan()
{
}
}
//抽象的数据节点
public abstract class DataNode
{
//获取员工的数量
public abstract int GetEmployeeNumber();
}
//公司
public class Company: DataNode
{
//公司名称
public string CompanyName { get; set; }
}
//部门
public class Department : DataNode
{
//部门id
public int DepartmentId { get; set; }
//部门名称
public string DepartmentName { get; set; }
}
//财务部门,这里直接拼音干
public class CaiWuDepartment : Department
{
public void AddNewEmployee(Employee e)
{
// ....
}
}
//员工
public class Employee : DataNode
{
//员工id
public int EmployeeId { get; set; }
//员工名称
public string EmployeeName { get; set; }
}
//员工为经理
public class JIngLiEmployee : DataNode
{
//也许经理就有提前下班的行为
public void TiqianXiaBan()
{
}
}
以上只是用类作为抽象的演示而已,真正的行为抽象还是用接口来抽象比较合适,这只是菜菜根据经验来总结的一点经验,如果错误,请留言指正
更多精彩文章
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。