C军

不玩博客了!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年3月24日

摘要: 面向对象三大特性:封装、继承和多态。一、封装 封装: 每个对象都包含它能进行操作所需要的所有信息,这个特性称为封装,因此对象不必依赖其他对象来完成自己的操作。 封装的好处: 1、良好的封装能够减少耦合。 2、类内部的实现可以自由地更改。 3、类具有清晰的对外接口。二、继承 对象的继承代表了一种"is-a"的关系,如果两个对象A和B,可以描述为"B是A",则表明B可以继承A。继承者还可以理解为是对被继承者的特殊化,因为它除了具备被继承者的特性外,还具备自己独有的个性。 继承常用与提炼出相同的特性,放于父类,起到减少代码重复的作用。 继承定义了类如何相互关联 阅读全文
posted @ 2013-03-24 20:52 逆心 阅读(759) 评论(0) 推荐(0) 编辑

摘要: 访问者模式(Visitor),表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 下面给出访问者模式的结构图: 从类图可以看出,访问者模式那是相当复杂啊! 下面给出访问者模式的基本代码结构:namespace ConsoleApplication1{ //Visitor类,为该对象结构中ConcreteElement的每一个类声明一个Visit操作。 abstract class Visitor { public abstract void VisitConcreteElementA(Co... 阅读全文
posted @ 2013-03-24 02:56 逆心 阅读(543) 评论(0) 推荐(0) 编辑

摘要: 解释器模式(interpreter),给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 解释器模式需要解决的是,如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。 下面给出解释器模式的结构图: 下面给出解释器模式的基本代码结构:namespace ConsoleApplication1{ //AbstractExpresstion(抽象表达式),声明一个抽象的解释操作,这个接口为抽象语法树中所有的节点所共享 ... 阅读全文
posted @ 2013-03-24 02:01 逆心 阅读(487) 评论(0) 推荐(0) 编辑

摘要: 享元模式(Flyweight),运用共享技术有效地支持大量细粒度的对象。 下面给出享元模式的结构图: 下面给出享元模式的基本代码结构:namespace ConsoleApplication1{ //Flyweight类,它是所有具体享元类的超类或接口,通过这个接口,Flyweight可以接受并作用于外部状态 abstract class Flyweight { public abstract void Operation(int extrinsicstate); } //ConcreteFlyweight是继承Flyweight... 阅读全文
posted @ 2013-03-24 00:13 逆心 阅读(326) 评论(0) 推荐(0) 编辑