02 2013 档案

摘要:一.时序图1.时序图概念:时序图的目的是:表示消息的顺序和时间的排序。生命线自上而下表示时间的顺序。时序图的消息就是对象之间的调用。时序图的消息发送可以是其它对象,也可以是自身。MetaClass在时序图中表示静态类,生命线表示的是类的生命线而不是实例的生命线,静态方法的调用会使用MetaClass。时序图中的图框的条件应该在生命线上。框图可以嵌套,常用的框图包括loop,alt。时序图比较复杂时,还可以包括引用,引用到一个局部的时序图上。初始消息的表示。比如上图中的doX消息。2.线程与时序图2.1线程的表示特点:将一个Runnable类做为参数构造Thread实例或者分配到线程池中线程执行 阅读全文
posted @ 2013-02-25 16:47 highriver 阅读(818) 评论(0) 推荐(0)
摘要:分布式系统或者清楚的分层系统中,客户端与服务端的职责需要界定,直接影响到了接口的定义。原则一:客户端对细节透明细节要封装成类型,让客户端依赖于类型(比如Enum,抽象类的子类,接口的实现类)来明确行为。客户端尽量做到只调用,简化调用。在开发接口时,尽量做到对客户端友好。比如SNS模块中,以前发送微博的内容交给了客户端,客户端需要了解如何去构造微博的内容。考虑的东西很多。现在对于客户端都透明。客户端只需了解发送的类型理解了这条原则,学习设计模式的时候,就会发现各种模式的目的都是客户端不依赖细节。将细节或变化的内容抽取到类中。备忘录模式,如果不使用备忘录模式,客户端依赖需要了解具体的过程的状态值。 阅读全文
posted @ 2013-02-20 17:23 highriver 阅读(292) 评论(0) 推荐(0)
摘要:1.理解synchronized首先需要明确以下概念:什么是监视器:this,或者SomeClass.class。什么是对象锁:this可以看做是java.lang.Object的实例,SomeClass.class可以看做是java.lang.Class的实例,因为JVM内部为每个这样的实例都关联一个锁,所以把这样的内部锁称为对象锁。区别Class类的实例和类的实例: java每个类都对应一个Class类的实例,Class类的实例在JVM加载类时创建。synchronized (SomeClass.class) or public synchronized static void someS 阅读全文
posted @ 2013-02-04 18:59 highriver 阅读(2392) 评论(0) 推荐(0)