Java 成员方法的定义
方法的定义:
- 方法是类或对象的行为特征的抽象。
- Java中的方法不能独立存在,所有的方法必须定义在类中。
- 使用 “类名.方法” 或 “对象.方法” 的形式调用。
- 语法格式:
权限修饰符 返回值类型 方法名(参数类型 参数名) {
// 方法体
// 返回值
}
方法分类:
- 无参数无返回值
- 有参数无返回值
- 无参数有返回值
- 有参数有返回值
public class Method { public void aMethod() { System.out.println("无参数无返回值的方法"); } public void bMethod(int b) { System.out.println("有参数无返回值的方法"); } public int cMethod() { System.out.println("无参数有返回值的方法"); return 10; } public int dMethod(int d) { System.out.println("有参数有返回值的方法"); return d; } public static void main(String[] args) { int ret;
// 创建Method类的对象 Method md = new Method();
// 通过对象.方法调用 md.aMethod(); md.bMethod(10); ret = md.cMethod(); ret = md.dMethod(10); System.out.println(ret); } }
方法的参数:
方法可以没有参数,或者有多个参数,参数类型可以是任意类型
方法参数也是局部变量
参数为引用数据类型时:
当对象实例作为参数传递给方法时,传递的是对象的引用,为地址传递,接受参数的方法可以改变参数的值。
参数为简单数据类型时:
传递的是参数的副本,为值传递,接受参数的方法中不会改变参数的值。
public class MethodParam { /** * 方法的参数为基本数据类型时,传递的是值的副本(值拷贝) * 方法中不会改变元参数的值 */ public void swap(int a, int b) {//a, b为形参 int tmp; tmp = a; a = b; b = tmp; } int x = 100, y = 200; /** * 方法的参数为引用数据类型时,传递的对象的引用(传地址) * 方法中可以改变参数的值 */ public void swap2(MethodParam mp) { int tmp = mp.x; mp.x = mp.y; mp.y = tmp; } public static void main(String[] args) { MethodParam mp = new MethodParam(); int m = 10, n = 20; System.out.println("交换前:a = "+m+",b = "+n); mp.swap(m, n);// m,n为实参 System.out.println("交换后:a = "+m+",b = "+n); System.out.println("交换前:x = "+mp.x+",y = "+mp.y); mp.swap2(mp); System.out.println("交换后:x = "+mp.x+",y = "+mp.y); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架