抽象可能从未停止过
发布于: 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
版权声明: 本文为 InfoQ 作者【架构师修行之路】的原创文章。
原文链接:【http://xie.infoq.cn/article/1bed007f7f6d82d533c973aae】。文章转载请联系作者。
架构师修行之路
关注
一个坚持把架构做到极致的技术人 2014.10.19 加入
还未添加个人简介
评论