写点什么

抽象可能从未停止过

发布于: 2020 年 09 月 07 日
抽象可能从未停止过





//公司
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()
{

}
}





以上只是用类作为抽象的演示而已,真正的行为抽象还是用接口来抽象比较合适,这只是菜菜根据经验来总结的一点经验,如果错误,请留言指正



更多精彩文章





发布于: 2020 年 09 月 07 日阅读数: 43
用户头像

一个坚持把架构做到极致的技术人 2014.10.19 加入

还未添加个人简介

评论

发布
暂无评论
抽象可能从未停止过