第6章方法.docVIP

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章方法

第6章 方法 学习目标 理解如何用称为“方法”的部件模块化地构造程序 介绍Java API常用的数学方法 能够创建新方法 理解在方法间传递信的机制 介绍使用随机数生成的模拟技术 了解如何将声明的可视性限定在程序的指定区域内 了解如何编写和使用调用自身的方法 本章简介 大多数解决现实世界问题的计算机程序都比本教材前几章介绍的程序要大得多。经验表明,开发和维护一个大型程序的最好方法是小型而简单的程序段,或者说通过模块来构造。这种技术称为“分而治之”。本章描述如何声明和使用方法,使大型程序的设计、实现、操作和维护更加容易。 Java中的程序模块 Java中有2种模块:方法和类。借助Java应用编程接口(Java Application Programming Interface,也称为Java API或Java类库)和其他各种类库中可用的、“预先打包的”方法和类,程序员可以编写出新的方法和类,通过组合这些新的方法和类,便可编写出Java程序。Java API提供了大量的类,这些类可执行常见的数学计算、字符串操作、字符操作、输入/输出操作、错误检查以及其他许多有用的方法。这些类使得程序编写变得更容易,因为Java API提供了程序员需要的许多功能。Java API类是Java2软件开发工具包(J2SDK)的一部分。Java2软件开发工具包中有数千个预先打包的类。 软件工程知识:应尽量避免重复劳动。如果可能,使用Java API中的类和方法,而不是编写新的类和方法。这样做可以缩短程序开发时间,而且可以避免引入新的编程错误。 性能提示:不要试图改写现有的Java API类和方法以使它们变得更有效。通常,我们没有能力来提高它们的性能。 方法(有时在其他编程语言中也称为函数或过程)允许程序员将程序任务分成多个独立的单元,使程序模块化。这种方法有时也称为程序员声明的方法。用于实现方法的实际语句只编写一次,对其他方法是隐藏的。 用方法这种方式模块化程序有多种动机。其中之一就是“分而治之”方法,使得程序开发更好管理。别一种动机是软件的重用——用现有的方法作构件块以创建新的程序。通常,我们可以用标准的方法创建程序,而不必构造自己的代码。例如,在前几章的程序中,我们不必定义如何将字符串转化整数或浮点数,Java在类Interger(静态方法parseInt)和类Double(静态方法parseDouble)中分别是提供了这些功能。动机之三是为了避在程序中重复代码。通过打包的代码,允许程序从多个位置通过简单地调用该方法来执行它。另外,采用方法这种方式也使程序更易于调试和维护。 软件工程知识:为了提高软件的可重用性,每个方法应该限定于执行单一的、明确定义的任务,而且方法名应能有效地反映该任务。这样的方法会使程序更易于编写、调试、维护和修改。 错误预防提示:与执行多任务的大型方法比,执行一个任务的小方法更易测试和调试。 方法通过调用来执行指定任务。方法调用指定方法名提供被调用方法执行任务所需的信息(作为参数)。当方法调用结束时,方法要么返回一个结果给调用方法(或称为调用者),要么只是简单地将控制返回给调用方法。与这种程序结构类似的例子是层次管理模式。老板(调用者)要求一个工人(被调用方法)去执行一项任务,并在任务完成后汇报(即返回)结果。老板不知道工作是如可执行指定任务的,工人或许还使用了其他的工作,这一点老板也不知道。这种实现细节的“隐藏”促进了良好的软件工程。下图显示了boss的方法以层次方式与几个工人的方法之间进行通信。boss方法将任务分合不同的worker方法。注意,worker1相对于worker4和worker5而言,也扮演着“老板方法”的角色。方法相互关系也能与这张图中所示的层次结构不同。 Math类的方法 Math类提供了大量可用于执行常用数学计算的方法。在这里,我们将通过各种Math类方法为介绍方法的概念。在本书中,我们讨论了许多来自于Java API类的方法。 方法调用的格式为:先写方法名,接着是左括号,然后是方法的参数(或者是一个用逗号隔开的参数列表),最后是右括号。例如,程序员要想计算900.0的平方根,应该写成这样:Math.sqrt(900.0)该语句执行时,它将调用静态的Math方法sqrt(Math类的所有方法都是静态的,所以通过在方法名前面冠以类名Math和一个点号就可以调用Math类方法)来计算括号中数字900.0的平方根。900.0是方法sqrt的参数。上述表达式的计算结构为30.0。方法sqrt带一个double类型的参数,返回一个double类型的结果。要在命令窗口中输出上述方法调用的结果。可以写为: System.out.println(Math.sqrt(900.0)); 在这条语句中,sqrt返回的值成了方法

文档评论(0)

kakaxi + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档