- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章 方 法 回 顾 选择和循环混合程序设计 预习检查 类的方法由哪几部分组成? 使用什么关键字定义包和导入包? JavaDoc怎样写注释? 目 标 分而治之的思想 Java方法的语法 如何实现方法 如何调用方法 包 问 题 假设你已成功地编写了计算素数的代码,但如果在另一个程序中也需要计算素数那该怎么办呢? 重用的思想 软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程 可重用性一直是软件工程所追求的目标之一,软件工程界希望有一天能和其它工业领域一样,利用标准化的软件模块快速构建特定的应用系统 问 题 假设你们小组一起完成一个完整ATM的编码,怎么做呢?大家聚在一台机器前编写?分开编写又如何集成在一起呢? 分而治之的思想 任何一个可以用计算机求解的问题所需的时间都与其规模有关。问题规模越小,解题所需的计算时间往往也越少,从而也越容易计算。想直接解决一个较大的问题,有时是相当困难的 分治法的思想就是,将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之 分而治之的思想 方法的概述 计算机编程常常将问题划分成称为“方法”的模块,每个方法实现一项非常专一的功能 方法的格式 Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,声明格式: [修饰符1 修饰符2 …] 返回值类型 方法名(形参列表){ Java语句; } 比如main方法: public static void main(String[] args){ 代码块 } 方法格式具体说明 方法名可以是任何有效的标识符,命名规则和变量一样 返回类型是该方法返回给调用函数的数据类型 形参列表中是一份用逗号隔开的列表,其中包含对传递给方法的参数的声明 方法名、返回类型和参数列表定义了方法签名,即唯一识别该方法的“签名” 例如: int add(int a,int b){……} void showMessage(int id){……} boolean del(int id){……} 访问修饰符 public表明定义的方法是公共的,可以在任何程序中调用 static表明定义的方法是静态的,可以直接在main方法中使用 返回类型与返回值 返回类型可以是任何一种数据类型或对象类型 含义为方法要返回的值的类型 如果没有返回类型,使用void 返回值是指方法执行以后具体返回的结果值 在方法体中使用return关键字结束方法,返回具体结果值 课堂演示 实现max()方法,返回两个参数最大的一个 方法的调用 在定义方法之后,就可以在程序中调用它 如果该方法有返回值(返回类型不是空值),那就可以将结果赋给一个变量,或在表达式中使用该结果 调用的格式: 方法名(实参列表) 形参和实参 形参:定义方法时,规定方法要接受参数的形式 实参:调用方法时,具体传入到方法里面进行处理的数值 参数传递和返回值 1、声明了一个变量maxVal,分别赋值为5和6 形参变量开始并不存在 参数传递和返回值 2、开始调用方法,产生a、b两个临时变量 把5和6两个参数传递给这两个变量 参数传递和返回值 3、返回值被赋予maxVal变量 局部变量a、b被释放掉,方法结束 类变量 在类中除了能够包含方法以外,还能够直接包含变量 语法: 数据类型 变量名; 这些变量的作用域是整个类范围。即该类所有的方法都能够直接使用 课堂练习 求圆柱体的体积 课堂示例 import java.util.Scanner; class Test{ static final float PI = 3.14f; public static float getArea(float r){ float s = PI * r * r; return s; public static float getVolume(float r, float h){ float s = getArea(r); float v = s * h; return v; } } 课堂示例 public static void main(String[] args){ Scanner scan = new Scanner(System.in); System.out.print(输入圆的半径:); float r = scan.nextF
文档评论(0)