易截截图软件、单文件、免安装、纯绿色、仅160KB

java设计模式_Composite模式

Composite模式(组合)
   Java深入到一定程度,就不可避免的碰到设计模式这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循一定的编程模式,才能使自己的代码便于理解,易于交流,Composite(组合模式)模式是比较常用的一个模式.
   Composite组合模式,将对象以树形结构组织起来,以达成“部分-整体” 的层次结构,使得客户端对单个对象和组合对象的使用具有一致性。
   优点: 1.使客户端调用简单,客户端可以一致的使用组合结构或其中单个对象,用户就不必关系自己处理的是单个对象还是整个组合结构,这就简化了客户端代码。
         2.更容易在组合体内加入对象部件. 客户端不必因为加入了新的对象部件而更改代码。
  在此写了6个java类来描述说明Composite设计模式的实现方式;
  1、 Circle.java      部件-圆
  2、 Graph.java       部件-抽象类
  3、 Line.java        部件-线
  4、 Picture.java     部件-图
  5、 Rectangle.java   部件-方
  6、 PictureTest.java 带有main方法的测试类
===============   1、 Circle.java
package composite;
//部件-圆
public class Circle extends Graph {
 public void draw() {
  System.out.println("Draw a circle.");
 }
}
===============   1 end
===============   2、 Graph.java
package composite;
import java.util.Iterator;
//部件-抽象类
public abstract class Graph{
 //画图
    public abstract void draw();
 //增加一个图形
 public void add(Graph g){};
 //删除一个图形组件
 public void remove(Graph g){};
 
 //获得组合体的内部部件
 public Iterator<Graph> iter(){return null;};
}
===============   2 end
===============   3、 Line.java
package composite;
//部件-线
public class Line extends Graph {
 public void draw() {
  System.out.p


相关文档:

Java线程:线程的调度 让步

Java线程:线程的调度-让步
 
线程的让步含义就是使当前运行着线程让出CPU资源,但是然给谁不知道,仅仅是让出,线程状态回到可运行状态。
 
线程的让步使用Thread.yield()方法,yield() 为静态方法,功能是暂停当前正在执行的线程对象,并执行其他线程。
 
/**
* Java线程:线程的调度-让步
*
......

Java线程:volatile关键字

Java线程:volatile关键字
 
Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。
 
谈及到volatile关键字,不得不提的一篇文章是:《Java ......

Java线程:新特征 线程池

Java线程:新特征-线程池
 
Sun在Java5中,对Java线程的类库做了大量的扩展,其中线程池就是Java5的新特征之一,除了线程池之外,还有很多多线程相关的内容,为多线程的编程带来了极大便利。为了编写高效稳定可靠的多线程程序,线程部分的新增内容显得尤为重要。
 
有关Java5线程新特征的内容全部在java.util ......

Java线程:新特征 阻塞队列

Java线程:新特征-阻塞队列
 
阻塞队列是Java5线程新特征中的内容,Java定义了阻塞队列的接口java.util.concurrent.BlockingQueue,阻塞队列的概念是,一个指定长度的队列,如果队列满了,添加新元素的操作会被阻塞等待,直到有空位为止。同样,当队列为空时候,请求队列元素的操作同样会阻塞等待,直到有可用元素为 ......

Java线程:并发协作 生产者消费者模型

Java线程:并发协作-生产者消费者模型
对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。
实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。
对于此模型,应该明确一下几点: ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号