package demo1;
public class Description {
/**
* 描叙:
* 一个球,从一根绳子的一段滚到另一端
*/
}
package demo1;
import java.awt.Point;
public class Rope {
private Point start; //起点
private Point end; //终点
public Point nextPoint(Point currentPoint){
/**
* 计算获得下一个位子
*/
return new Point();
}
}
package demo1;
import java.awt.Point;
public class Ball {
private Point current; //现在的位置
private Rope rope;
public void move(Rope rope,Point current){
current = rope.nextPoint(current);
System.out.println("小球移动到:"+current);
}
}
package demo2;
public class Description {
/**
* 描叙:
* 两块石头,制成一把石刀,石刀砍树得到木材,木材做成椅子
*/
}
package demo2;
public class Stone {
/**
* 石头
*/
}
package demo2;
public class StoneKnife {
/**
* 石刀
*/
public Wood cut(Tree tree){
/**
* 得到木材
*/
return new Wood();
}
}
package demo2;
public class Tree {
/**
* 树
*/
}
package demo2;
public class Wood {
/**
* 木材
*/
}
package demo2;
public class Chair {
/**
* 椅子
*/
Wood wood;
ChairFactory chairFactory = new ChairFactory();
Chair chair = chairFactory.makeChair(wood);
}
package demo2;
public class KnifeFactory {
/**
* 石刀生产工厂
*/
public StoneKnife creatKnife(Stone stone1,Stone stone2){
return new StoneKnife();
}
}
package demo2;
public class ChairFactory {
/**
* 椅子生产工厂
*/
public Chair makeChair(Wood wood){
return new Chair();
}
}