当前位置导航:炫浪网>>网络学院>>编程开发>>JAVA教程>>Java进阶

设计模式-快餐简解-【工厂方法模式】

    【工厂方法模式应用场景举例

    比如在玩“极品飞车”这款游戏,晕了吧,我喜欢极品飞车:),在玩这款游戏时,游戏者可以选择从不同品牌来选择赛车,那么这个“品牌”其实也就是工厂,每个工厂生产的赛车都不一样,这就是典型的工厂方法的应用场景。

    【工厂方法模式解释

    类型:创建模式

    定义一个用于创建对象的接口,让其子类来决定实例化哪一个类(产品),工厂方法使一个类的创建延迟到其子类中。

    【工厂方法模式UML图

    【工厂方法模式-JAVA代码实现

    新建赛车的接口:

package  car_interface;
public   interface  Icar_interface {
    
public   void  start();
    
public   void  stop();
}

    新建1个汽车信息的基类:

package  car_imple;
import  car_interface.Icar_interface;
public   class  base_car_imple  implements  Icar_interface {
    
private   int  speed;
    
private  String name;
    
public   int  getSpeed() {
        
return  speed;
    }
    
public   void  setSpeed( int  speed) {
        
this .speed  =  speed;
    }
    
public  String getName() {
        
return  name;
    }
    
public   void  setName(String name) {
        
this .name  =  name;
    }
    
public   void  start() {
        
//  TODO Auto-generated method stub
    }
    
public   void  stop() {
        
//  TODO Auto-generated method stub
    }
}

    新建奥迪汽车实现类:

package  car_imple;
import  car_interface.Icar_interface;
public   class  car_audi_imple  extends  base_car_imple {
    
public   void  start() {
        System.out.println(
this .getName()  +   "  车以专利技术起动了 最高速度为: "
                
+   this .getSpeed());
    }
    
public   void  stop() {
        System.out.println(
this .getName()  +   "  车以专利技术停车了 " );
    }
}

    新建大众汽车实现类:

package  car_imple;
import  car_interface.Icar_interface;
public   class  car_3w_imple  extends  base_car_imple {
    
public   void  start() {
        System.out.println(
this .getName()  +   "  车以专利技术起动了 最高速度为: "
                
+   this .getSpeed());
    }
    
public   void  stop() {
        System.out.println(
this .getName()  +   "  车以专利技术停车了 " );
    }
}

共2页 首页 上一页 1 2 下一页 尾页 跳转到
相关内容
赞助商链接