2010-4-15

  周三again!貌似效率也不怎么高!
  早上起来本来准备画621图的,有一次被工程量吓退了,嗨!真没出息!momo!草草的把Factory模式又多看了看!这个模式再不熟悉的话真是对不起我所花的时间了。。。最主要的感觉就是多个实现类共同实现一个interface,这个接口里的方法大家都有各自的实现(废话),然后工厂类根据具体调用类(用classForName得到)来返回实例。感觉就是一个多态的应用(有的情况)。当然有的情况(design pattern书上的例子),就更有意义,可以根据服务端的状态不同而生产出不同的类返回。书上老是强调utility库中的iterator是工厂类的实现,我到不怎么觉得!不就是每个实现collection的类都实现iterator()方法来返回一个iterator类么?这应该是接口的典型应用吧!在调用iterator方法的时候都知道是什么类了,比如Iterator it = List/Set/Map.Iterator()。。。怎么扯到Factory了,也许是我理解还没有到位吧,造孽呀! 不过反过来想想也是,其实Iterator()方法就相当于Factory模式下的getInstance()方法。
  下午晚上上课,主要是information hiding class的设计和622 的security,感觉讲的比较空泛,本来以前就是学安全的,觉得他讲那些实在是…………收获不大!
  课间倒是把synchronized(this)学习了一下,貌似是对本对象的此块代码段进行同步。如果有多线程同时访问,那么多个synchronized段的话,只有取的了锁的那个thread能访问,其他要访问本或者其他synchronized段的线程都block。但是非synchronized方法是不阻塞的,随便访问!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s