freehell

2010年10月24日

递归设计

摘要: package org.chinasoft.iterator;public class Test2 { public static void main(String[] args) { System.out.println(iterator(5)); } public static int iterator(int c) { if(c == 1) { return 1; //递归的结束条件 } else { return c * iterator(c-1); } }} 目标:理解什么是递归递归使用时要注意的地方(如何防止出现死递归现象) 理解递归与循环的区别 能够画出递归调用... 阅读全文

posted @ 2010-10-24 19:27 freehell 阅读(169) 评论(0) 推荐(0) 编辑

单例设计

摘要: 单例(Singleton)设计兼谈工厂 要求:创建一个类,此类不能被外界,只能调用对外提供的接口来拿到该类的实例,要求每次返回的都是该类相同的实例。 示例代码: Student.java package org.chinasoft.dp; public class Student { private static Student student = new Student(); private Student() { } public static Student getInstance() { return student; } public String toString() { retu 阅读全文

posted @ 2010-10-24 19:04 freehell 阅读(128) 评论(0) 推荐(0) 编辑

工厂设计模式

摘要: 目标:熟悉静态工厂方法单例多例熟悉简单工厂熟悉抽象工厂熟悉简单工厂和抽象工厂的优缺点Simulate Spring的BeanFactory静态工厂方法解析:示例代码:产品类:Car.javapackage org.chinasoft.dp.singleton;public class Car implements Moveable { private static Car car = new Car(); private Car() { } public static Car getInstance() { return car; } public void run() { Syste... 阅读全文

posted @ 2010-10-24 18:58 freehell 阅读(217) 评论(0) 推荐(0) 编辑

Iterator设计模式

摘要: package org.chinasoft.dp.iterator;public class LinkedList { private Node head; private Node tail; private int size; public void add(Object o) { Node n = new Node(o, null); if(head == null) { head = n; tail = n; } tail.setNext(n); tail = n; size++; } public int size() { return size; } pu... 阅读全文

posted @ 2010-10-24 18:51 freehell 阅读(228) 评论(0) 推荐(0) 编辑

导航