首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

面向对象转化为实际的代码——请大家指点,该如何处理

2012-02-15 
面向对象转化为实际的代码——请大家指点///summary///员工类////summarypublicclassSataffer{publicILi

面向对象转化为实际的代码——请大家指点
///   <summary>
        ///   员工类
        ///   </summary>
        public   class   Sataffer
        {
                public   IList <Sataffer>   staffers;
                public   IList <Sataffer>   Staffers
                {
                        get   {   return   staffers;   }
                        set   {   staffers   =   value;   }
                }
                ///   <summary>
                ///   获取员工列表
                ///   </summary>
                ///   <returns> </returns>
                public   IList <Sataffer>   GetStafferList()
                {
                        IList <Sataffer>   staffers   =   new   List <Sataffer> ();
                        staffers.Add(new   Sataffer());
                        return   staffers;
                }
                public   void   Add()
                {
                        //添加一个员工到数据库中的代码
                }
        }

  ///   <summary>
        ///   部门类
        ///   </summary>
        public   class   Department
        {
                public   IList <Sataffer>   staffers;
                public   IList <Sataffer>   Staffers
                {
                        get   {   return   staffers;   }
                        set   {   staffers   =   value;   }
                }
                ///   <summary>
                ///   获取员工列表
                ///   </summary>
                ///   <returns> </returns>
                public   IList <Sataffer>   GetStafferList()


                {
                        IList <Sataffer>   staffers   =   new   List <Sataffer> ();
                        staffers.Add(new   Sataffer());//实际是从数据库获取数据
                        return   staffers;
                }
                public   void   AddStaffer(Sataffer   staffer)
                {
                        new   Sataffer().Add();
                }
        }
请问GetStafferList()方法应该在什么地方写。
请大家说一下,
从面向对象的角度出发,这样的代码应该如何写??

[解决办法]
个人认为 单纯面向对象的应该把员工类和员工业务处理、员工数据持久分开
[解决办法]
类之所以叫类,就是表示它是一种类别,在我看来Company是一个公司,自然员工是它的一部分,员工则是个体,它最好只负责一个员工的职责,所以在我看来要得到所有员工的列表的话,这应该是Company的事情,而不是一个员工的职责。
[解决办法]
回复人:rosanshao(罗三少) ( 二级(初级)) 信誉:100 2007-02-09 12:48:15 得分:0
?
对了,应该就是这样,如果是添加一个员工呢,添加一个员工是在这个公司下添加,那么那么按道理AddStaffer也应该放在Commpany类里吗?


--------------------


对的。

热点排行