自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 查询学生所选课程的SQL语句

学生表  StudentStudentidStudentidname1张三2李四3王五课程表  CourseCourseidCoursename1Java2C#3C4C++5Javascript关系表  StudentCourseStudentidCourseid1114212325题目是这样的:有学生表、课程表和关系表,查出学生所选的课程。要得出以下结果:学生所选课程张三Java,C++李四Java,C,Javascript

2010-12-03 13:51:00 3209

原创 设计模式之享元模式

<br />      享元模式:运用共享技术有效地支持大量的细粒度对象,其实就是将对象的相同部分(内部状态)和不同部分(外部状态)分离,并共享内部状态。<br />#region 享元模式 class User { private string name; public string Name { get { return name; } } public User(

2010-11-19 14:00:00 294

原创 设计模式之中介者模式

<br />      中介者模式:用一个中立的对象来封装一系列的对象的交互,中介者对象是各个对象不必显式的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。<br />#region 中介者模式 abstract class Country { protected UnitedNations mediator; public Country(UnitedNations uN) { media

2010-11-19 13:57:00 370

原创 设计模式之职责链模式

<br />职责链模式:多个接受者都有机会处理请求,这就避免了请求的发送者和接受者之间的耦合关系,将这个对象连接成一条链,并沿着这条链处理请求,只有有一个对象处理了该请求。(请求发送者提供请求,管理抽象类提供一个可以设置传递方向的方法,各个接收者继承管理抽象类并重写各自对请求的处理方法)<br /> #region 职责链模式 //请求类 class Request { public string requestType; public st

2010-11-19 13:55:00 253

原创 设计模式之命令模式

<br />命令模式:将一个请求封装成一个对象,然后可以用不同的请求对客户进行参数化,(烧烤店点菜,烤肉:服务员根据用户的需要生成一个点菜单,服务员根据点菜单的内容下达命令给烧烤师傅)<br /> #region 命令模式 class Barbecuer { public void BakeChickenAction(int num) { Console.WriteLine("{0}个鸡翅烤好了!",num);

2010-11-19 13:52:00 255

原创 设计模式之桥接模式

<br />桥接模式:当一个对象可以按照多角度去分类,并且各种分类都有可能变化时,可以采用桥接模式,将各种分类分离让他们独立变化,以减少他们之间的耦合。(各种牌子的手机游戏)<br /> #region 桥接模式 abstract class HandSetSoft { public abstract void Run(); } class HandSetGame:HandSetSoft { public overr

2010-11-19 13:51:00 272

原创 设计模式之迭代器模式

<br /> #region 迭代器模式 interface Iterator { object First(); bool MoveNext(); object CurrentItem(); } class ConcreteIterator : Iterator { private ConcreteAggregate concreteAggregate; pri

2010-11-19 13:49:00 248

原创 设计模式之组合模式

<br />组合模式:让客户可以一致的使用组合结构和单个对象<br /> #region 组合模式 abstract class Company { private string name; public string Name { get { return name; } set { name = value; } } public Com

2010-11-19 13:47:00 266

原创 设计模式之备忘录模式

<br />备忘录模式:当对象的状态需要回到前面某个状态时,可以通过备忘录模式,定义需要保存的细节的类,对需要保存的细节进行保存。这样,当需要保存的细节变化时,也不会影响到客户端<br /> #region 备忘录模式 /// <summary> /// 备忘类,需要保存的数据集合 /// </summary> class GameRoleMemento { private int atk; //攻击力 priv

2010-11-19 13:44:00 337

原创 设计模式之适配器模式

<br />适配器模式:当一个接口与另外一个接口不一致时,可以通过适配器模式将接口统一(姚明需要翻译),舍得原本不能一起工作的两个接口能够一起工作。<br /> #region 适配器模式 class 外籍中锋 { private string _name; public string Name { get { return _name; } set { _name = value;

2010-11-19 12:32:00 229

原创 设计模式之简单工厂模式

<br /> 简单工厂模式:封装了创建具体类的过程,通过工厂动态创建具体的对象,但是违背了开放封闭原则,所以必要时可以将简单工厂模式演变为反射+抽象工厂模式.<br />public class Operation { private double num1; private double num2; public double Num1 { get {

2010-11-18 13:56:00 298

原创 设计模式之策略模式

策略模式:封装了变化,在context类的内部实现业务逻辑,UI层无需知道具体的逻辑public class Operation    {        private double num1;        private double num2;        public  double Num1        {            get {                return num1;            }            set            {         

2010-11-18 13:50:00 287

原创 设计模式之观察者模式

观察者模式:通知者定义一个委托,观察者通过将指定的方法监听到委托,以实现对观察者的更新实例: #region 观察者模式:观察者Mouse將Run方法監聽到Cat的委托Catshout,当委托被执行的时候,mouse对象将会执行Run方法    class Cat    {        private string name;        public Cat()        { }        public Cat(string namestr)        {            this.

2010-11-17 13:59:00 247

原创 设计模式之工厂方法模式

工厂方法模式:当需求的变化需要更改简单工厂类的实现时,违背了开放-封闭原则,这时可以通过工厂方法模式,将工厂抽象,为每个具体的实体类创建对应的工厂,实现抽象的工厂接口方法public class Operation    {        private double num1;        private double num2;        public  double Num1        {            get {                return num1;       

2010-11-17 13:58:00 278

原创 设计模式之反射+抽象工厂模式

反射+抽象工厂模式:通过程序集动态创建对象实例:   #region 反射+抽象工厂模式 using System.Reflection; public class Operation    {        private double num1;        private double num2;        public  double Num1        {            get {                return num1;            }         

2010-11-17 13:53:00 335

原创 设计模式之装饰模式

装饰模式:通过将所有的具体类继承自同一个类,并且在具体的类中引用父类的对象,来达到任意搭配具体类中方法的执行顺序的目的(人穿衣服的例子;)实例:  #region 装饰模式    class Person    {        private string name;        public String Name        {            set {                name = value;            }            get           

2010-11-17 13:47:00 277

原创 设计模式之代理模式

代理模式:一个类对另外一个类的代理,可以隐藏真实的对象,通过代理类去操作,代理类和真实类实现同一个接口(A通过B向C示爱)实例:    #region 代理模式    interface IShowLove    {        void ShowLoveToMM();    }    class Pursuer:IShowLove    {        BeautifulGirl bGirl;        public Pursuer(BeautifulGirl beautifulGirl)    

2010-11-17 13:44:00 251

原创 设计模式之原型模式

     当需要根据实例创建新的对象时,可以通过原型模式,继承ICloneable接口,通过MemberwiseClone()方法对对象进行复制,如果被复制的成员是值类型,会复制一个新的成员。如果是引用类型,则只是复制数据的引用,他们会指向同一个地址。实例:  #region 原型模式    class Resume : ICloneable    {        private string name;        private string sex;        private string a

2010-11-17 13:42:00 274

原创 设计模式之模板方法模式

      模板方法模式定义一个操作中的算法的骨架,当操作中的某些步骤的具体细节可能不同时,可以采用模板方法模式,将这些不同的细节延迟到子类中(通过虚方法在子类中重写,父类调用虚方法)(如考试试卷)。   这样,子类可以在不改变算法的骨架的情况下重定义算法的某些特定步骤。实例: #region 模板方法模式    abstract class TestPaper    {        private void TestQuestion1()        {            Console.Writ

2010-11-17 12:31:00 265

原创 设计模式之外观模式

外观模式为子系统中的一组接口提供一个一致的界面,是的子系统更容易使用,调用方不需要知道子系统的存在(股票与基金)实例: #region 外观模式    class SubSystemOne    {        public void ShowMyMessage()        {            Console.WriteLine("我是子系统一的方法ShowMyMessage");        }    }    class SubSystemTwo    {        public v

2010-11-17 12:25:00 342

原创 设计模式之建造者模式

      主要是为了创建一个结构稳定的复杂的对象(游戏小人,通过建造者模式可以保证小人不会缺胳膊少腿),通过指挥者类对建造类的建造过程进行管理,保证了建造的对象结构的稳定性。   #region 建造者模式    class SmallPerson    {        List parts = new List();        string type;        public SmallPerson(string type)        {            this.type = ty

2010-11-17 12:22:00 219

原创 设计模式之状态模式

当控制一个对象的状态转换的条件表达式过于复杂时,把状态的判断逻辑转移到表示不同状态的一系列类中。实例:   #region 状态模式    abstract class State    {        public abstract void DoSomething(WorkLife wl);     }    class SleepState : State    {        public override void DoSomething(WorkLife wl)        {      

2010-11-17 12:17:00 206

原创 设计模式之单例模式

 public class Singleton        {            private static Singleton singleton;            private static readonly object obj = new object(); //程序运行时创建静态只读的辅助进程对象            private Singleton()            { }            public static Singleton GetInstence(

2010-11-11 12:29:00 266

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除