A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 侯慧杰 中级黑马   /  2012-7-8 20:16  /  2440 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类的设计模式挺好玩的,除了单例设计模式外,还有工厂设计模式但是什么是工厂设计模式啊??谁能给代码嘛????还有其他的什么设计模式啊????

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

6 个回复

倒序浏览
//人类
abstract class Person{
      public string name {get;set;}
      public abstract void A();
}
//学生类
class Student:Person{
      public override void A(){
            //执行学生的方法
      }
}
//教师类
class Teacher:Person{
      public override void A(){
             //执行教师的方法
      }
}
//工厂类
public static class PersonFactory{
      public static Person getPerson(int type){
             Person p = null;
             if(type==1) p = new Teacher();
             else p = new Student();
             return p;
      }   
}
以上代码为手敲版,未进行过编译器检测
工厂模式:利用的是多态,以上只是体现了 父子类的工厂,还有 接口工厂
     工厂模式 的方法 返回值是父类(或接口),调此工厂的方法得到一个父类,然后调父类的方法,实现多态,实现思路大概是这样,直观的感觉不到什么优点,要通过项目才能有感觉
(以上写的有所简洁,实际中工厂方法的参数可能不同,道理都是用到里氏替换原则得到父对象)

以下是分享的一个经典书籍

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
要是直接要代码的话不太利于学习,有时候还是多听听毕老师的视频,如果你非要代码的话,可以百度,那上面也有好多代码!!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
以下是分享的书籍,有兴趣可以看看

4人帮设计模式.part1.rar

1.39 MB, 下载次数: 180

4人帮设计模式.part2.rar

1.39 MB, 下载次数: 190

4人帮设计模式.part3.rar

1.39 MB, 下载次数: 191

4人帮设计模式.part4.rar

1.39 MB, 下载次数: 198

4人帮设计模式.part5.rar

1.39 MB, 下载次数: 170

4人帮设计模式.part6.rar

1.39 MB, 下载次数: 178

4人帮设计模式.part7.rar

1.39 MB, 下载次数: 181

4人帮设计模式.part8.rar

425.04 KB, 下载次数: 159

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
383105662 发表于 2012-7-8 20:22
要是直接要代码的话不太利于学习,有时候还是多听听毕老师的视频,如果你非要代码的话,可以百度,那上面也 ...

亲,已经有基础了,以前有什么问题直接在论坛问了,可以节省时间,你懂得。。。。。我就觉得这几个设计模式很重要,所以就问了,,,,,你别见怪。。。。。有基础的直接看代码无需看视频!
回复 使用道具 举报
设计模式还是建议对面向对象理解的很好了在去看!
回复 使用道具 举报
1,工厂模式有以下几种形态:简单工厂(Simple Factory)模式 ,工厂方法(Factory Method)模式 和抽象工厂(Abstract Factory)模式;
2,工厂模式提供创建对象的接口,是属于创建型的模式;

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马