<P>所谓<FONT color=#0000ff>面向对象的设计</FONT>就是指通过<FONT color=#0000ff>建立一些类以及它们之间的关系</FONT>来<FONT color=#0000ff>解决实际问题</FONT>(类及关系解问题)。</P>+ O0 q/ W/ A) x1 ?2 L5 Q3 P. A
<P>面向对象的设计就是要学会用"<FONT color=#0000ff>类</FONT>"来思考问题,首先要想到程序要处理的是什么而不是它要完成什么功能。</P>, A7 A5 ^! l7 W5 B. E
<P><FONT color=#0000ff>确定类有一些原则</FONT>,首先是从问题中归纳出需要描述的概念或实体,从这些概念和实体出发去建立相应的类。(如要建立一个家庭书库,则这里可以归纳出一个描述书的类)</P>
6 Q9 m$ _ j- `8 F5 O, P: t1 P<P>这些原则中很<FONT face=黑体 color=#ff0000>重要</FONT>的是应当<FONT color=#ff0000>尽量使类小而简单</FONT>,使它能够被一般的程序员所理解,因为小而简单的类<FONT color=#ff0000>容易实现</FONT>,如果想设计一个面面俱到的类,往往会使类太复杂而无法使用,要记住,<FONT face=黑体 color=#ff0000>类是要拿来用的,而且必须易于使用</FONT>。如果要考虑复杂的概念,可以从简单的概念开始设计出简单的类,再通过一个类族来实现它。 </P>, ^' d5 k6 c8 u3 ~2 L& ^/ ]
<P>还有一个原则就是要<FONT face=黑体 color=#ff0000>充分利用封装</FONT>来增加类的可靠性。类中的<FONT color=#0000ff>封装</FONT>可以使类不依赖与具体的环境,这就使类代码可以重用并运用于其他情况。同时,数据封装也严格限制了对类中数据成员的访问,这可以保证程序的运行更加可靠。 </P>
8 G0 X# I8 W0 k" [<P>其他就是通过建立<FONT color=#0000ff>类族</FONT>来使多态性有用武之地;设计方案要经过实际测试才可定型。 </P>8 Z+ ^* o$ T: c5 s
<P>面向对象的设计方法有:<FONT color=#0000ff>自顶向下</FONT>的设计方法、<FONT color=#0000ff>自底向上</FONT>的设计方法以及<FONT color=#0000ff>一般的面向对象的设计方法</FONT>,这是综合了上述两种方法,使建立的类树具有合理的层次结构,从而使应付错误的能力大增强。</P>' C$ F5 ]3 W. z! f2 l
<P><FONT color=#666666>(看看教材,感觉好象是东方快车翻译出来的汉化文章,越到后面越是。我觉得自己成了汉语的受害者。:p)</FONT></P>
' \; e' {. h2 m* i0 O/ b<P><FONT color=#0000ff>类群</FONT>就是由一些彼此<FONT color=#0000ff>互不相关</FONT>的类和类族组成的一组类。</P>' s$ E. u: L( v( U- Y0 _
<P><FONT color=#0000ff>类树</FONT>就是一组类中所有的类不管它们之间的差别有多大,他们都有一个<FONT color=#0000ff>共同的相关类</FONT>(基类),这种类的结构就称为类树。</P> |