情境三程序结构与数组_第1页
情境三程序结构与数组_第2页
情境三程序结构与数组_第3页
情境三程序结构与数组_第4页
情境三程序结构与数组_第5页
已阅读5页,还剩14页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

假设有一个游戏程序,程序在运行过程中,要不断地发射炮弹。发射炮弹的动作需要编写100行的代码,在每次实现发射炮弹的地方都需要重复地编写这100行代码,这样程序会变得很臃肿,可读性也非常差。为了解决代码重复编写的问题,可以将发射炮弹的代码提取出来放在一个{}中,并为这段代码起个名字,这样在每次发射炮弹的地方通过这个名字来调用发射炮弹的代码就可以了。上述过程中,所提取出来的代码可以被看作是程序中定义的一个方法,程序在需要发射炮弹时调用该方法即可。什么是方法2.6方法

如何定义类的方法类的方法定义类的某种行为(或功能)方法的定义方法的名称方法的主体方法返回的数据类型定义类的方法public返回值类型方法名(){//这里编写方法的主体}步骤一:定义方法名以及返回值步骤二:编写方法体接下来通过一些案例来介绍方法在程序中起到的作用,先来看一下在不使用方法时如何实现打印三个长宽不同的矩形,请查看教材文件2-21。案例代码2.6方法在Java中,声明一个方法的具体语法格式如下所示:修饰符:是对访问权限的限定,例如,public、static都是修饰符返回值类型:用于限定方法返回值的数据类型参数类型:用于限定调用方法时传入参数的数据类型参数名:是一个变量,用于接收调用方法时传入的数据return关键字:用于结束方法以及返回方法指定类型的值返回值:被return语句返回的值,该值会返回调用者2.6方法方法的返回值两种情况如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类型如果方法没有返回值,返回类型为voidpublicclassStudent{Stringname="张三";publicvoidgetName(){

returnname;}……}返回类型要匹配return表达式;编译错误作用:跳出方法给出结果方法调用方法是个“黑匣子”,完成某个特定的应用程序功能,并返回结果方法调用:执行方法中包含的语句

对象名.方法名();2、小明过生日,爸爸送他一个电动狮子玩具,编程测试这个狮子能否正常工作方法调用publicclassAutoLion{Stringcolor="黄色";//颜色

/*跑*/publicvoidrun(){System.out.println("正在以0.1米/秒的速度向前奔跑。");}/*叫*/publicStringbark(){Stringsound="大声吼叫";returnsound;}/*获得颜色*/publicStringgetColor(){returncolor;}/*显示狮子特性*/publicStringshowLion(){return"这是一个"+getColor()+"的玩具狮子!";}}publicclassTestLion{

publicstaticvoidmain(String[]args){AutoLionlion=newAutoLion();System.out.println(lion.showLion());lion.run();System.out.println(lion.bark());}}在类的方法中调用该类另一个方法演示示例2:方法调用在main()方法中调用类的方法

接下来,定义一个打印矩形的方法,并在程序中调用三次完成三个矩形的打印,请查看教材文件2-22。接下来,通过一个案例来演示方法中有返回值的情况,请查看教材文件2-23。案例代码2.6方法假设要在程序中实现一个对数字求和的方法,由于参与求和数字的个数和类型都不确定,因此要针对不同的情况去设计不同的方法。接下来通过一个案例来演示,请查看教材文件2-24。案例代码方法的重载2.6方法Java允许在一个程序中定义多个名称相同的方法,但是参数的类型或个数必须不同,这就是方法的重载。接下来,通过演示方法的重载,请查看教材文件2-25。案例代码2.6方法方法调用小结方法之间允许相互调用,不需要知道方法的具体实现,提高了效率情况

举例Student类的方法a()调用Student类的方法b(),直接调用publicvoida(){b();//调用b()}Student类的方法a()调用Teacher类的方法b(),先创建类对象,然后使用“.”调用publicvoida(){Teachert=newTeacher();t.b();//调用Teacher类的b()}publicclassStudent{ publicvoidshowInfo(){ return"我是一名学生"; }}方法的返回类型为void,方法中不能有return返回值!常见错误4-1publicclassStudent{ publicdoublegetInfo(){ doubleweight=95.5; doubleheight=1.69; returnweight,height; }}方法不能返回多个值!常见错误4-2publicclassStudent{ publicStringshowInfo(){ return"我是一名学生"; publicdoublegetInfo(){ doubleweight=95.5; doubleheight=1.69; returnweight; } }}多个方法不能相互嵌套定义!常见错误4-3publicclassStudent{ publicStringshowInfo(){ return"我是一名学生"; } publicdoublegetInfo(){ doubleweight=95.5; doubleheight=1.69; returnweight; }}publicclassStudent{ intage=20; if(age<20){ System.out.println("年龄不符合入学要求!"); } publicvoidshowInfo(){ return"我是一名学生"; }}不能在方法外部直接写程序逻辑代码!常见错误4-41-1:实现一个方法,接收一个层数值n,打印一个有n层的直角三角形,并返回底边最后一个值。并打印出来。练习1-2:编写程序,定义三个重载方法并调用。方法名为mOL。三个方法分别接收一个int参数、两个int参数、一个字符串参数。第一个方法执行平方运算并输出结果,第二个方法执行相乘并输出结果,第三个方法执行输出字符串信息。在主类的main()方法中分别用参数区别调用三个方法。练习1-3:定义三个重载方法max(),第一个方法求两个int值中的最大值,第二个方法求两个double值中的最大值,第三个方法求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论