随堂笔记之Java方法

news/2025/3/26 3:57:48/文章来源:https://www.cnblogs.com/TTTiffany/p/18788275

此内容源自

B站狂神说Java基础

的课后笔记与总结,用于复习和查看,因此写得比较简陋,不太适合萌新学习

方法定义

Java方法定义

方法调用

调用方法:对象名.方法名(实参列表)

  • 方法返回一个值的时候,方法调用通常被当做一个值
  • 方法返回值是void,方法调用是一条语句

*值传递和引用传递:

Java全是值传递
(待补充完善)

方法的重载

一个类中,有相同的方法名称,但是方法的形参不同
方法重载的规则:

  • 方法名称必须相同
  • 参数列表必须不同(个数不同、或类型不同、或参数排列顺序不同等)
  • 方法的返回类型可以相同也可不相同
  • 仅仅返回类型不同不足以构成方法的重载

命令行传参

有时候你希望运行一个程序的时候再传递给他消息,这就要靠传递命令行参数给main()函数实现,在使用java运行.class文件的同时传递参数String[] args

注意事项:

Java在运行.class文件时,使用的是包结构,而不是文件系统路径,因此不能再class的文件路径下使用java命令运行.class文件,所以要返回包的根目录,使用java com.example.MyClass来运行.class文件

可变参数

Java支持传递同类型的可变参数给一个方法

  • 在方法声明中,在指定参数类型后加一个省略号...
  • 一个方法中只能指定一个可变参数,并且必须是方法的最后一个参数,任何普通的参数必须在它之前声明
public void 方法名(数据类型... 参数名) {// 方法体
}//只有可变参数
public class VarargsExample {public static int sum(int... numbers) {int total = 0;for (int num : numbers) {total += num;}return total;}public static void main(String[] args) {System.out.println(sum(1, 2, 3));        // 输出: 6System.out.println(sum(10, 20, 30, 40)); // 输出: 100System.out.println(sum());               // 输出: 0}
}//普通参数+可变参数
public static void printMessages(String prefix, String... messages) {System.out.println(prefix);for (String msg : messages) {System.out.println("- " + msg);}
}public static void main(String[] args) {printMessages("Messages:", "Hello", "Java", "Varargs");// 输出:// Messages:// - Hello// - Java// - Varargs
}

底层原理:将可变参数当做数组处理,所以也可以直接传递数组

可变参数和方法重载:

  • 只有参数个数不同,建议使用可变参数
  • 参数类型有不同,则使用方法重载

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/904677.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3.24

Android Studio 启动模拟器出现“Timed out after 300seconds waiting for emulator to come online“解决方案 问题: Timed out after 300seconds waiting for emulator to come online.**解决方法: 检查自己的Emulator是否是最新版本,如果不是检查更新到最新

使用ESP32的语音到文本转换

ESP32 + INMP441麦克风+ SD卡+ Deepgram API =语音到文本只需3秒!即时记录、存储和转录。现在就试试! 最快!使用ESP32板的语音到文本转换语音转文本技术改变了许多项目的游戏规则。从在智能家居中实现免提控制到为残疾人创建无障碍解决方案,将口语转换为文本的能力打开了无限的…

SNeP软件计算有效群体大小

001、官网: https://sourceforge.net/projects/snepnetrends/002、脚本: SNeP1.1 -ped sample_name.ped -map sample_name.map -threads 10 -ld -out ./sample_name003、结果文件:。

2025.3.28(周五)

android实验二第三部分 事情处理 1. 点击事件 (OnClickListener) 方法:setOnClickListener(View.OnClickListener listener) android:onClick(在 XML 中使用) 核心功能:处理按钮、文本、图片等控件的 单击事件。 使用场景:按钮提交、页面跳转、功能触发等。 2. 长按事件 (…

关于原生小程序canvas标签始终显示再最上层问题

官方说明: https://developers.weixin.qq.com/miniprogram/dev/component/native-component.html 解决方法:将canvas正常绘制 对canvas进行定位,远离手机屏幕显示区域 将canvas转换为img图片,将转换后的图片进行展示 如果图片清晰度不够,则将canvas成倍的绘制,将转换后的…

Particle Asset OTA 如何实现远程

问题 用粒子平台部署更新到你的舰队是很容易的。但是,当您的产品包含其他组件(如ML模型、显示器、协处理器、证书或图像和声音等媒体)时,远程管理更新就变得更具挑战性。传统的方法通常需要物理访问,这可能耗时、昂贵,而且在规模上不切实际。解决方案 粒子资产OTA使您能够轻…

【企业必读】内外网文件传输的6个常见误区,你中招了吗?

在数字化转型的浪潮中,企业内外网文件传输已成为日常运营中不可或缺的一环。然而,许多企业在进行网络隔离后的文件传输和产品选型时,常常陷入一些常见的误区。这些误区不仅可能影响工作效率,还可能带来严重的安全隐患和合规风险。本文将深入探讨这些误区,并提供实用的建议…

SpreadJS V18.0 新版本发布!数据驱动革新,效率与体验全面升级

表格控件SpreadJS推出V18.0及V8.0版本!本次更新聚焦数据管理、多语言适配、报表与透视表增强,新增多项重磅功能,赋能企业高效应对复杂业务场景。核心亮点速览👇 一、表格绑定数据源:直连数据管理器,性能与效率双突破 开发背景 企业常将 Excel 作为动态数据库使用(如分析…

使用LattePanda V1制作了一个简单的基于batocera的游戏仿真站

现在,我们正在使用我们最近开发的Batocera arcade Box使用PS1模拟器运行Roadrash。我们使用的是Batocera Linux,这是一个开源且完全免费的复古游戏发行版本,旨在将任何计算机或单板计算机变成游戏控制台。 在这里,我们在相当旧的Latte Panda V1单板计算机上启动了Batocera,…

河北省科级政策app 连接MySQL数据库

项目结构 在连接数据库的时候要把localhost改为自己电脑的IP地址 开放mysql数据库远程访问的权限 使用jdbc的方法把jar包导入项目中

【Guava工具类】StringsInts

String相关工具 Strings Guava 提供了一系列用于字符串处理的工具: 对字符串为null或空的处理nullToEmpty(@Nullable String string):如果非空,则返回给定的字符串;否则返回空字符串 public static String nullToEmpty(@Nullable String string) {//如果string为null则返回…

我开发的【巨大娘的玩耍♥】游戏正在众筹中,参与即可获得限量优惠回报

大家好,我开发的【巨大娘的玩耍♥】游戏正在众筹中,参与即可获得限量优惠回报 游戏目前正在爱发电上众筹,众筹总额达成5千元即可开发和发布正式版。众筹截止日期:2025年7月23日 支持者可获得 8折激活码、获得所有玩家可见的特殊成就、上感谢名单 等 限量 回报~ 点我查看具体…