1. 程式人生 > >java常用設計模式--工廠方法模式簡單例子

java常用設計模式--工廠方法模式簡單例子

package com.ruanyun;

/**
* @Auther: maxw
* @Date: 2018/11/12 11:02
* @Description:工廠方法模式:有四個角色,抽象工廠模式,具體工廠模式,抽象產品模式,具體產品模式。不再是由一個工廠類去例項化具體的產品,而是由抽象工廠的子類去例項化產品。
*/
public class Test6 {
public static void main(String args[]){
ShoesFactory liNingFactory = new LiNingFactory();
Shoes liNing = liNingFactory.create();
liNing.run();
ShoesFactory nikeFactory = new NikeFactory();
Shoes nike = nikeFactory.create();
nike.run();
}
}
//定義一個鞋子介面
interface Shoes{
void run();
}
//李寧鞋子
class LiNing implements Shoes{
@Override
public void run() {
System.out.println("李寧的鞋子就是舒服。。。");
}
}
//耐克鞋子
class Nike implements Shoes{
@Override
public void run() {
System.out.println("耐克的鞋子就是貴。。。");
}
}
//定義一個抽象鞋工廠
abstract class ShoesFactory{
abstract Shoes create();
}
//李寧鞋廠
class LiNingFactory extends ShoesFactory{
@Override
Shoes create() {
System.out.println("李寧鞋廠生產了李寧的鞋子。。。");
return new LiNing();
}
}
//耐克鞋廠
class NikeFactory extends ShoesFactory{
@Override
Shoes create() {
System.out.println("耐克鞋廠生產了耐克的鞋子。。。");
return new Nike();
}
}