<P>所谓<FONT color=#0000ff>面向对象的设计</FONT>就是指通过<FONT color=#0000ff>建立一些类以及它们之间的关系</FONT>来<FONT color=#0000ff>解决实际问题</FONT>(类及关系解问题)。</P>
3 G+ J" q0 M. C: ^& }<P>面向对象的设计就是要学会用"<FONT color=#0000ff>类</FONT>"来思考问题,首先要想到程序要处理的是什么而不是它要完成什么功能。</P>! A: z0 N2 d- N0 `2 L, x/ j/ z
<P><FONT color=#0000ff>确定类有一些原则</FONT>,首先是从问题中归纳出需要描述的概念或实体,从这些概念和实体出发去建立相应的类。(如要建立一个家庭书库,则这里可以归纳出一个描述书的类)</P>
% T/ M4 n% P- R8 V<P>这些原则中很<FONT face=黑体 color=#ff0000>重要</FONT>的是应当<FONT color=#ff0000>尽量使类小而简单</FONT>,使它能够被一般的程序员所理解,因为小而简单的类<FONT color=#ff0000>容易实现</FONT>,如果想设计一个面面俱到的类,往往会使类太复杂而无法使用,要记住,<FONT face=黑体 color=#ff0000>类是要拿来用的,而且必须易于使用</FONT>。如果要考虑复杂的概念,可以从简单的概念开始设计出简单的类,再通过一个类族来实现它。 </P>- z7 _8 {& U7 m3 o. f6 j
<P>还有一个原则就是要<FONT face=黑体 color=#ff0000>充分利用封装</FONT>来增加类的可靠性。类中的<FONT color=#0000ff>封装</FONT>可以使类不依赖与具体的环境,这就使类代码可以重用并运用于其他情况。同时,数据封装也严格限制了对类中数据成员的访问,这可以保证程序的运行更加可靠。 </P>
2 K% G" c1 H7 h$ B( A0 m<P>其他就是通过建立<FONT color=#0000ff>类族</FONT>来使多态性有用武之地;设计方案要经过实际测试才可定型。 </P>
& n c9 f( H9 \) R# c<P>面向对象的设计方法有:<FONT color=#0000ff>自顶向下</FONT>的设计方法、<FONT color=#0000ff>自底向上</FONT>的设计方法以及<FONT color=#0000ff>一般的面向对象的设计方法</FONT>,这是综合了上述两种方法,使建立的类树具有合理的层次结构,从而使应付错误的能力大增强。</P>
; U3 f; Y& ]& i/ ~5 F<P><FONT color=#666666>(看看教材,感觉好象是东方快车翻译出来的汉化文章,越到后面越是。我觉得自己成了汉语的受害者。:p)</FONT></P>; J" f+ a& B4 e
<P><FONT color=#0000ff>类群</FONT>就是由一些彼此<FONT color=#0000ff>互不相关</FONT>的类和类族组成的一组类。</P>
6 n. E) \( Q' ^3 T<P><FONT color=#0000ff>类树</FONT>就是一组类中所有的类不管它们之间的差别有多大,他们都有一个<FONT color=#0000ff>共同的相关类</FONT>(基类),这种类的结构就称为类树。</P> |