java工厂模式
来源:互联网 发布:手机号批量加微信软件 编辑:程序博客网 时间:2024/06/06 11:58
工厂模式
方法步骤:
1.创建一个接口2.创建实现相同接口的具体类
3.创建工厂根据给定的信息生成具体类的对象。
4.使用工厂通过传递类型等信息来获取具体类的对象。
package sa;
interface Shape {//创建一个接口
void draw();
}
class Rectangle implements Shape {//创建实现相同接口的具体类
@Override
public void draw() {
System.out.println("Inside Rectangle::draw() method.");
}
}
class Square implements Shape {//创建实现相同接口的具体类
@Override
public void draw() {
System.out.println("Inside Square::draw() method.");
}
}
class Circle implements Shape {//创建实现相同接口的具体类
@Override
public void draw() {
System.out.println("Inside Circle::draw() method.");
}
}
class ShapeFactory {//创建工厂根据给定的信息生成具体类的对象。
//use getShape method to get object of type shape
public Shape getShape(String shapeType){
if(shapeType == null){
return null;
}
if(shapeType.equalsIgnoreCase("CIRCLE")){
return new Circle();
} else if(shapeType.equalsIgnoreCase("RECTANGLE")){
return new Rectangle();
} else if(shapeType.equalsIgnoreCase("SQUARE")){
return new Square();
}
return null;
}
}
public class Factory {//使用工厂通过传递类型等信息来获取具体类的对象。
public static void main(String[] args) {
// TODO Auto-generated method stub
ShapeFactory shapeFactory = new ShapeFactory();
Shape shape1 = shapeFactory.getShape("CIRCLE");
shape1.draw();
Shape shape2 = shapeFactory.getShape("RECTANGLE");
shape2.draw();
Shape shape3 = shapeFactory.getShape("SQUARE");
shape3.draw();
}
}
测试结果
Inside Circle::draw() method.
Inside Rectangle::draw() method.
Inside Square::draw() method.
- java工厂模式-简单工厂,工厂方法,抽象工厂模式
- Java工厂模式之简单工厂模式
- java中的工厂模式(简单工厂模式+工厂方法模式)
- 工厂模式(工厂方法模式,抽象工厂模式) Java
- java的工厂模式
- java工厂模式
- java工厂模式
- java 设计工厂模式
- Java 工厂模式设计
- Java工厂模式
- Java工厂模式
- Java工厂模式
- JAVA工厂模式详解
- java 工厂模式
- Java工厂模式
- java抽象工厂模式
- Java的工厂模式
- java主题:工厂模式
- 导入ssh项目到myeclipse(最新最详细)
- Android PopupWindow类
- 快速击键系统Quickhit
- pandas 索引选取和过滤(四)
- 虚拟机VMare12安装Ubuntu16.04
- java工厂模式
- 【统计】NormalTable,PossionTable
- 《北大经典讲座》——读书杂谈
- wechat4j对于不需要处理的消息类型的处理
- java 快速排序算法
- PHP 单元测试工具 SimpleTest
- poj2155 Matrix 二维树状数组
- (android高仿系列)今日头条 --新闻阅读器
- android动画(二)——补间动画