温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java Parameter参数有何区别

发布时间:2026-09-13 15:12:00 来源:亿速云 阅读:93 作者:小樊 栏目:编程语言

在 Java 里,“Parameter(参数)” 这个词在不同场景含义略有不同,常见区别主要集中在 定义处 vs 调用处、以及 方法参数 vs 类型参数(泛型)。下面系统说明。


一、方法中的 Parameter 与 Argument 的区别(最常被问)

1️⃣ Parameter(形参)

  • 定义方法时使用
  • 用于接收外部传入的值
  • 也叫:形式参数
public void printSum(int a, int b) {
    // a、b 是 parameter
}

2️⃣ Argument(实参)

  • 调用方法时使用
  • 实际传入的值
  • 也叫:实际参数
printSum(3, 5); // 3、5 是 argument

✅ 总结一句话:

Parameter 是定义,Argument 是调用。


二、Parameter 与局部变量的区别

public void test(int x) {
    int y = 10;
}
项目 Parameter 局部变量
声明位置 方法签名 方法体
初始化 自动由调用方赋值 需手动赋值
生命周期 方法调用期间 方法调用期间

三、Parameter 与泛型 Parameter(Type Parameter)的区别

1️⃣ 方法参数(Value Parameter)

public void setAge(int age)

2️⃣ 类型参数(Type Parameter)

class Box<T> {
    T value;
}
  • <T>类型参数
  • 用于泛型,编译期确定类型

✅ 区别:

类型 作用
方法 Parameter 传数据
泛型 Parameter 传类型

四、Parameter 传递方式(Java 特有重点)

Java 只有值传递(pass by value)

1️⃣ 基本类型

void change(int x) {
    x = 10;
}
  • 修改不影响外部

2️⃣ 引用类型

void change(List<Integer> list) {
    list.add(1);
}
  • 传递的是引用的值
  • 可修改对象内容,但不能改引用本身

五、反射中的 Parameter

Method m = ...
Parameter[] params = m.getParameters();
  • java.lang.reflect.Parameter
  • 用于运行时获取参数名、注解、类型

六、速记总结

Parameter ≠ Argument
Parameter 是定义,Argument 是调用
Java 只有值传递
泛型 也是 Parameter(类型参数)

如果你是想问 Java 与其他语言(如 C++)参数区别,或 构造函数参数 / 注解参数,可以告诉我具体场景。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI