设为首页收藏本站

SKY外语、计算机论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4981|回复: 0
打印 上一主题 下一主题

[java基础] 再讲工厂模式--(抽象工厂)

[复制链接]

20

主题

0

好友

351

积分

版主

Rank: 7Rank: 7Rank: 7

性别
保密

最佳新人 活跃会员 热心会员 宣传达人 优秀版主 论坛元老

跳转到指定楼层
楼主
发表于 2013-5-29 09:22:38 |只看该作者 |正序浏览
本帖最后由 sky_yx 于 2015-12-30 14:09 编辑

从汽车组装说起:
创建汽车接口--
package com.moshi.abstractfactory;
public interface car {
       public void build();
}
创建车胎接口:
package com.moshi.abstractfactory;
public interface tyre {
   public void build();
}
创建车轮接口:
package com.moshi.abstractfactory;
public interface whell {
   public void build();
}
分别创建实现类:
汽车实现---
package com.moshi.abstractfactory;
public class car1 implements car{
        @Override
        public void build() {
                // TODO Auto-generated method stub
                System.out.println("汽车1组装开始...");
        }
}
//车轮组装实现
package com.moshi.abstractfactory;
public class car1tyre implements tyre{
        @Override
        public void build() {
                // TODO Auto-generated method stub
                System.out.println("组装汽车1车轮完毕!");
        }
}
//车胎组装实现
package com.moshi.abstractfactory;
public class car1whell implements whell{
        @Override
        public void build() {
                // TODO Auto-generated method stub
                System.out.println("组装汽车1轮胎完毕!");
        }
}
//建立抽象工厂。。。
package com.moshi.abstractfactory;
public interface factory {
  public whell createwhell();
  public car createcar();
  public tyre createtyre();
}
//抽象工厂实现
package com.moshi.abstractfactory;
public class carfactory implements factory{
        @Override
        public car createcar() {
                // TODO Auto-generated method stub
                return new car1();
        }
        @Override
        public tyre createtyre() {
                // TODO Auto-generated method stub
                return new car1tyre();
        }
        @Override
        public whell createwhell() {
                // TODO Auto-generated method stub
                return new car1whell();
        }
}
测试组件---:
package com.moshi.abstractfactory;
public class testclient {
        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub
          factory fac=new carfactory();
          car car1=fac.createcar();
          car1.build();//1
          tyre tyre1=fac.createtyre();
          tyre1.build();//2
          whell whell1=fac.createwhell();
          whell1.build();//3
        }
}
;;;本着面向接口面向抽象的编程思想,学习23种设计模式是很有必要的!

分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
分享淘帖0 收藏收藏0 评分评分
您需要登录后才可以回帖 登录 | 立即注册


手机版|SKY外语计算机学习 ( 粤ICP备12031577 )    

GMT+8, 2024-12-22 21:43 , Processed in 0.112293 second(s), 28 queries .

回顶部