面向对象的疑惑

                            
有一个Employee类,它有两个链表用来记录Employee的排班表、考勤记录。这些排班表,考勤记录数据量很大。我每次实例化一个Employee类的时候是不是都需要把它的排班表、考勤记录都从数据库加载的内存中?但有的时候我根本不需要操作它的排班表和考勤记录啊!但不加载Employee又是不完全的!我希望使用Employee的程序只知道去它的链表里取排班表和考勤记录。   难道要有两个成员变量记录他的考勤记录、排班表是否加载的内存中?那样的话,如果在没加载之前,正好新增加了考勤记录,并且这些考勤记录已经存到数据库中了,这时我需要所有的考勤记录,是不是需要把链表中的考勤记录先删除,在从数据库中加载所有的考勤记录?   
  同样的问题还有:有一个对所有的部门抽象的类Department,它有一个链表记录他的子部门,我实例化一个部门时是不是要加载他的子部门?那子部门的子部门呢?如此下去,实例化一个最上层部门时岂不是要把整个单位的部门加载进来?  
   
  本来我分析是作的好好的,但为什么涉及到对象持久化问题是就这么麻烦?以前作程序,需要时就直接去数据库中取,增、删、改都对数据库操作就没这么多麻烦!  
   
  愁死我了!  
 

查看回复