news 2026/5/5 23:14:23

学习Java的第七天——基础(方法的使用)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学习Java的第七天——基础(方法的使用)

目录

一、方法的概念以及使用

1.1 什么是方法

1.2 方法的定义

1.3 方法调用的执行过程

1.4 实参和形参的关系

1.5 没有返回值的方法

二、方法的重载

2.1 为什么需要方法重载

2.2 方法重载的概念

三、递归

3.1 递归的概念

3.2 递归执行过程分析


一、方法的概念以及使用

1.1 什么是方法

比如说要开发一款日历,要经常判断是否为闰年,那么这个组织代码,就可以被称之为方法,客户可以在多个位置使用。

1.2 方法的定义

public static 返回值 方法名(形式参数列表) { 方法体代码; return 返回值; }

1.修饰符:public static(目前先用这个做固定搭配)

2.返回值类型:如果方法有返回值,返回值类型不行要与返回的实体类型一致,如果没有,必须写成void。

3.方法名:采用小驼峰。

4.参数列表:如果没有参数就是()。如果有参数,需要指定参数类型,每个参数之间用逗号隔开。

5.方法体:方法内部要执行的语句。

6.在Java中,方法必须写在类中、方法不能嵌套定义、没有方法声明这个说法。

1.3 方法调用的执行过程

调用方法------>传递参数------>找到方法地址------>执行被调方法的方法体------>被调方法结束返回------>回到主调方法继续往下执行。

1.4 实参和形参的关系

形参的改变不会影响实参的值,方法拿不到main函数中变量的地址。

在Java中,实参的值永远都是拷贝到形参中,实参和形参本质上是两个实体。

public class Test { public static void main(String[] args) { int a = 10; int b = 20; swap(a, b); System.out.println("main: a = " + a + " b = " + b); } public static void swap(int x , int y) { int tmp = x; x = y; y = tmp; System.out.println("swap :x = " + x +" y = " + y); } }

1.5 没有返回值的方法

方法的返回值是可选的,有的时候可以没有,没有时返回值类型就必须是void;

public class Test { public static void main(String[] args) { int a = 10; int b = 20; print(a, b); } public static void print(int x, int y) { System.out.println("x = " + x + " y = " + y); } }

二、方法的重载

2.1 为什么需要方法重载

想要实现的功能一样只是参数类型不一样,或者参数类型一致,参数个数一致,如果写多个方法名就不太美观,因此有了方法重载。

2.2 方法重载的概念

在Java中方法名一致,参数列表不同(类型不同,个数不同,顺序不同),则称这几种方法被重载了。

public class Test { public static void main(String[] args) { System.out.println(add(2, 3)); System.out.println(add(2.3, 3.3)); System.out.println(add(3.2, 3.4, 5.1)); } public static int add(int x, int y) { return x + y; } public static double add(double x, double y) { return x + y; } public static double add(double x, double y, double z) { return x + y + z; } }

三、递归

3.1 递归的概念

一个方法在执行的过程中调用自身就被称为递归!

public class Test { public static void main(String[] args) { int n = 5; int ret = factor(n); System.out.println("ret = " + ret); } public static int factor(int n) { if(n == 1) { return 1; } return n * factor(n - 1); } }

3.2 递归执行过程

必须要理解“方法的执行过程”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 9:30:01

胡萝卜叶片检测 _ 基于GA优化Faster R-CNN的X101-64x4d_FPN模型实现

1. 胡萝卜叶片检测:基于GA优化Faster R-CNN的X101-64x4d_FPN模型实现 在现代农业中,作物病虫害的早期检测对于提高产量和质量至关重要。胡萝卜作为一种广泛种植的蔬菜,其叶片健康状况直接影响地下根茎的生长。传统的叶片检测方法依赖人工观察…

作者头像 李华
网站建设 2026/5/2 19:17:31

【课程设计/毕业设计】机器学习基于python-CNN深度学习识别猫脸

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/5 7:32:31

肾脏超声图像质量评估与分类系统实现(附Mask R-CNN模型训练)_1

1. 肾脏超声图像质量评估与分类系统实现(附Mask R-CNN模型训练) 1.1. 摘要 本文详细介绍了一个基于深度学习的肾脏超声图像质量评估与分类系统的实现过程。系统采用Mask R-CNN作为核心模型,通过对肾脏超声图像进行质量评估和分类,…

作者头像 李华
网站建设 2026/4/22 14:42:20

如何高效发布新款,在线看款?

做服装批发的姐妹们,是不是每次上新、开选款会,都要把新款图片、细节图、面料图一股脑发给供应商,然后群里来去,图片发了一堆,对方还可能看不全、看不清,或者信息混乱?👏土著相册小&…

作者头像 李华
网站建设 2026/5/2 14:35:07

flask基于Python的智能购物电商平台商城

目录摘要开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!摘要 随着电子商务的快速发展,智能购物平台的需求日益增长。基于Python的Flask框架开发的智能购物电商平台,…

作者头像 李华
网站建设 2026/4/22 14:42:05

C4D + Corona 渲染玻璃材质详解:Thin Shell 与实心玻璃的正确使用方式

原创声明本文为原创技术整理文章,内容基于 Corona Renderer 在 Cinema 4D 中的实际使用经验总结,转载请注明出处。一、前言在 Cinema 4D 的实际项目中,玻璃材质是建筑可视化、室内渲染及产品渲染中非常常见的一类材质。 在 Corona Renderer 中…

作者头像 李华