Lazy Load四种实现

Lazy Load目的是为了避免过早载入占用较多资源的对象或其他系统资源。譬如PC游戏,如果没有手柄,就没有必要在游戏运行时就载入手柄相关的模块,可以等到需要手柄是再载入。

1. Lazy Initiliaze

设置一个标记位标识是否已载入对象,如果访问对象时未载入该对象,那么载入对象

2. Vritual Proxy

使用一个和目标对象接口相同的代理类。当代理类方法被调用时,将载入目标对象。目标对象方法调用都委托代理类调用。

Virtual Proxy

 

3. Value Holder

通过使用getValue获得通用类型的真实对象。当调用getValue时,对象会被载入。

4. Ghosts

对象被载入时,只有键值被载入。只有当其他字段需要访问时,才通过键值获得其他所有字段。

posted @ 2010-05-18 18:12  D_Arthas  阅读(342)  评论(0编辑  收藏  举报