【Java每日一题】— —第二十二题:类名作参数进行方法调用的传递问题。(2023.10.06)

🕸️Hollow,各位小伙伴,今天我们要做的是第二十二题。

🎯问题:

类名作参数进行方法调用的传递问题。

形式参数的问题:

(1)基本类型:形式参数的改变不影响实际参数。实参应该有确定的值,且其值的数据类型级别不能高于对应的形参数据类型的级别,参数的传递相当于赋值语句,即实参的值赋给形参。

(2)引用类型:形式参数的改变直接影响实际参数。参数的传递相当于赋值语句,实参的地址赋给形参,使得形参和实参指向同一个堆内存空间。

(3)如果你看到一个方法需要的参数是一个类名或者接口名,就应该知道这里实际需要的是一个具体的对象。

🎯答案:

java 复制代码
public class ArgsTest {

	public static void main(String[] args) {
		int a = 10;
		int b = 20;
		Demo d = new Demo();
		int result = d.sum(a, b);// 基本类型作参数传递
		System.out.println(result);
		System.out.println("---------------------------");
		StudentDemo sd = new StudentDemo();
		Student s = new Student();
		sd.method(s);            // 引用类型作参数传递
	}
}
//形式参数是基本类型
class Demo {
	public int sum(int a, int b) {
		return a + b;
	}
}
//Student是一个引用类型,相当于基本类型中的某个类型,比如int
class Student {
	public void show() {
		System.out.println("我们爱Java!");
	}
}
//形式参数是引用类型
class StudentDemo {
	public void method(Student s) {
		s.show();
	}
}
相关推荐
考虑考虑2 小时前
JDK26中的Map.ofLazy
java·后端·java ee
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 14 章 MCP 服务端(上):注解式实现与工具来源
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 15 章 MCP 服务端(下):三种协议形态、Streamable 传输与状态管理
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 16 章 向量存储(上):`VectorStore` 接口体系、`BatchingStrategy`
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 12 章 工具循环的流式形态、Usage 累加与扩展体系
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 23 章 模型供应商实现:从 `OpenAiSetup` 到 Bedrock
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 06 章 内置 Advisor 全景:13 个实现逐个剖到源码级
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 03 章 消息体系与 Prompt:不可变模型、`ChatOptions` 与模板渲染
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 24 章 生产实践与 2.x 迁移:陷阱清单、AOT 与调优
java·人工智能·开源
鶴哥只手遮天5 小时前
Spring AI 2.0.1 深度解析-第 10 章 工具调用(中):执行链路、结果转换与工具限制
java·人工智能·开源