网站大量收购闲置独家精品文档,联系QQ:2885784924

Java语言程序设计课件作者于红第6章节_实用类与类的设计.ppt

Java语言程序设计课件作者于红第6章节_实用类与类的设计.ppt

  1. 1、本文档共112页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
方法间的有效重用——提高方法内部的设计效率。 方法、成员变量等的修饰符的合理使用——考察可见性、静态、终止、抽象等修饰的合理安排。 类实例化的价值、被继承的价值、实例化的数量、实例化的成功与失败、加载与卸载环节的特殊需求等。 临界资源分析——考察线程安全性并选择合理的并发方案。 探讨整个类有没有进行进一步抽象或分离的必要——设计过程是一个推理演化的过程,超类抽象、接口抽象、类的分离(然后再组合)可能都会在类的审查重构时候发生。 8)对类进行充分的测试    在测试驱动模式下,设计的过程也是测试的过程,这样不仅能够有效地完成设计,也会促使类的编程接口更加友好。一般情况下,可以针对每个事物类编写一个甚至多个测试类,这些测试类,也可以作为事物类的应用实例。 2. 单词分解类    在简单地进行程序设计的情况下,单词分解可能是一个很简单的问题,如Copyright(C) 2010 XXX.这一句话分解的结果是Copyright、C、2010、XXX共四个单词,如果用程序来表达,下面的一段代码可以完成单词分解的功能:    public class analyzer{     public static void main(String[] args) {     String sentence=Copyright(C) 2010 XXX.; //原始句子     String separator= ,;().; //分隔符     int i, j;     i=0;     while(isentence.length()){//循环流程:跳过连续的分隔符,取出一个单词     if (separator.indexOf(sentence.charAt(i))=0) {++i; continue;} //跳过连续的分隔符     j=i; //当前字符一定是一个单词的开始     while (isentence.length() separator.indexOf(sentence.charAt(i))==-1) ++i; //跳过单词到下一个分隔符或者字符串结束     System.out.println(sentence.substring(j,i)); //取出一个单词     }     }    }   上述代码中有效的内容不过10行左右,但是这样进行程序设计,仅仅是完成了一次查找和输出过程,不仅可能没有完成任务,甚至是做了不该做的事情,难于满足使用者(程序员)的要求,因而可复用的价值很低。实际的需求可能就是“设计一个单词分解类”,[语意不清,请核对]但如果能够仔细研究一下,从满足各种可能的用户期望的角度考虑,再充分考虑代码的可复用性以及对象的重用性,那么如下的类的设计描述(API形式)也仅能反映出部分需求: public class analyzer{     private String sentence; //原始句子     private String[] identifier; //单词(此处使用数组而不是ArrayList等类型,增加一点实现上的难度)     private String separator= ,;; //分隔符     private int sPos=0;         public analyzer(String sen, String sep); //构造方法,构造时完成分解     public void setSentence(String s); //更改句子的方法,在更改的过程中也完成分解     public void setSeparator(String s); //更改分隔符的方法,在更改的过程中也完成分解     private void make(); //分解方法     public String getString(int pos); //取出指定序号位置的单词的方法     public String getString(); //按顺序取出一个单词的方法    }   从上述并不完整的设计方案中可以看出,要想设计好一个类,有时已经不是在于总结和学习设计技术方法的层面了,而是在于用心,简单地说,就是多从用户需求的角度考虑,既要满足具体需求,也要具备灵活性。 6.5.7 多类设计实例    类和类之间的关系,最常见的特殊关系有两种:包含和继承。包含是一种简单的关系,因而本小节主要通过继承问题讨论多类的设计,

您可能关注的文档

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档