当前位置:网站首页>21天学习第六天--方法
21天学习第六天--方法
2022-08-08 17:33:00 【人类幼崽养成记】
活动地址:CSDN21天学习挑战赛
方法是什么
方法是一种语法结构,它可以把一段代码封装成一个功能,以方便重复调用。
使用方法的好处是?
提高了代码的复用性。
让程序的逻辑更清晰。
方法定义的完整格式
修饰符 返回值类型 方法名( 形参列表 ){
方法体代码(需要执行的功能代码)
return 返回值;
}方法的调用格式
方法必须调用才可以跑起来,调用格式:
方法名(…);
int sum = add(10, 20);
System.out.println(sum);方法格式的注意点
方法的修饰符 返回值类型 方法名称 形参列表
public static int add ( int a , int b ){
int c = a + b;
return c;
}
方法的修饰符:暂时都使用public static 修饰。
方法申明了具体的返回值类型,内部必须使用return返回对应类型的数据。
形参列表可以有多个,甚至可以没有; 如果有多个形参,多个形参必须用“,”隔开,且不能给初始化值。
方法的其他写法
方法定义时:返回值类型、形参列表可以按照需求进行填写。
修饰符 返回值类型 方法名(形参列表){
方法体代码(需要执行的功能代码)
return 返回值;
}注意事项
如果方法不需要返回结果,返回值类型必须申明成void(无返回值), 此时方法内部不可以使用return返回数据。
方法如果没有参数,或者返回值类型申明为void可以称为无参数、无返回值的方法,依次类推。
真正需要关注的就两点:
1、分析方法是否需要申明返回值类型;
2、分析方法是否需要接收参数。
方法常见问题
方法的编写顺序无所谓。
方法与方法之间是平级关系,不能嵌套定义。
方法的返回值类型为void(无返回值),方法内则不能使用return返回数据,如果方法的返回值类型写了具体类型,方法内部则必 须使用return返回对应类型的数据。
return语句下面,不能编写代码,因为永远执行不到,属于无效的代码。
方法不调用就不执行, 调用时必须严格匹配方法的参数情况。
有返回值的方法调用时可以选择定义变量接收结果,或者直接输出调用,甚至直接调用;无返回值方法的调用只能直接调用
方法的调用流程
方法没有被调用的时候,在方法区中的字节码文件中存放
方法被调用的时候,需要进入到栈内存中运行
Java的参数传递机制:值传递
在传输实参给方法的形参的时候,并不是传输实 参变量本身, 而是传输实参变量中存储的值,这 就是值传递。
注意:
实参:如在方法内部定义的变量。
形参:如在定义方法时,“()”中所声明的参数。
总结
1. 形参和实参各指什么?
形参:以方法为例,就是方法定义时的变量。
实参:在方法内部定义的变量。
2. Java的参数传递机制是什么样的?
值传递,传输的是实参存储的值
基本类型和引用类型的参数在传递的时候有什么不同?
都是值传递。
基本类型的参数传输存储的数据值。
引用类型的参数传输存储的地址值
方法重载
同一个类中,出现多个方法名称相同,但是形参列表是不同的,那么这些方法就是重载方法。
方法重载的作用
可读性好,方法名称相同提示是同一类型的功能,通过形参不同实现功能差异化的选择,这是一种专业的代码设计。
1. 方法重载是什么样的?
同一个类中,多个方法的名称相同,形参列表不同。
2. 使用方法重载的好处 ?
对于相似功能的业务场景:可读性好,方法名称相同提示是同一类型的功能,通过 形参不同实现功能差异化的选择,这是一种专业的代码设计。
1. 方法重载的关键要求是什么样的?
同一个类中,多个方法的名称相同,形参列表不同,其他无所谓。
2.形参列表不同指的是什么?
形参的个数、类型、顺序不同。不关心形参的名称
return关键字单独使用
return; ---> 可以立即跳出并结束当前方法的执行; return关键字单独使用可以放在任何方法中。
1. 如果要直接结束当前方法的执行,怎么解决?
return; 跳出并立即结束所在方法的执行。
break; 跳出并结束当前所在循环的执行。
continue; 结束当前所在循环的当次继续,进入下一次执行
边栏推荐
猜你喜欢

文件操作和IO

The latest research from PNAS: 81% problem solving rate, neural network Codex opens the door to the world of advanced mathematics

DSPE-PEG-FITC,Fluorescein-PEG-DSPE,修饰性PEG磷脂-聚乙二醇-荧光素

迁移学习(Transfer Learning)的背景、历史

List<String>用空串替换null值,并且都加上单引号,并且转为字符串用,分割

yarn : 无法加载文件 D:xxx\node_global\yarn.ps1 因为在此系统上禁止运行脚本

【开源教程2】疯壳·开源编队无人机-硬件资源简介

spark学习笔记(八)——sparkSQL概述-定义/特点/DataFrame/DataSet

【DB运营管理/开发解决方案】上海道宁为您提供提高工作便利性的集成开发工具——Orange

史上最强IDEA工具使用教程,你想要的全都有!
随机推荐
LeetCode_回溯_中等_491.递增子序列
L2-017 人以群分 (25 分)
企业“数字化转型”成功的2个必备条件!
L2-028 秀恩爱分得快 (25 分)
C#异步和多线程
以数治企,韧性成长,2022 年中国 CIO 数字峰会成功举行
【FPGA教程案例45】图像案例5——基于FPGA的图像均值滤波verilog实现,通过MATLAB进行辅助验证
[In-depth study of 4G/5G/6G topic-54]: L3 signaling control-3-segmentation of software functions and processes-signaling of CU-UP network elements
正则在js中的使用
socket concept
京东二面:高并发设计,都有哪些技术方案?
DSPE-PEG-Biotin,385437-57-0,磷脂-聚乙二醇-生物素用于生物分子的检测和纯化
【云图说】第252期 初识云速建站服务
The difference between a uri (url urn)
手机ETF基金开户哪家证券公司好?哪个更安全
rv和sv的区别
c语言指针运算
LeetCode(剑指 Offer)- 21. 调整数组顺序使奇数位于偶数前面
徽商期货正规可靠吗?在徽商期货开户是否安全?
看到这个应用上下线方式,不禁感叹:优雅,太优雅了!