在 Java 中,Parameter(方法参数)的命名虽然没有强制语法限制,但遵循一套广泛接受的规范和最佳实践,可以显著提升代码可读性。
public void setName(String userName) { }
❌ 错误示例:
public void setName(String user_name) { } // 下划线不符合 Java 规范
public void sendEmail(String recipient, String content) { }
❌ 不推荐:
public void sendEmail(String a, String b) { }
i, j, kx, yfor (int i = 0; i < size; i++) { }
普通业务方法不推荐:
public void process(User u) { } // 不推荐
public User createUser(String name, int age) { }
使用 is / has / can / should 前缀:
public void setVisible(boolean isVisible) { }
public void checkPermission(boolean hasAdmin) { }
直接用类名去掉包名:
public void saveOrder(Order order) { }
public void updateUser(User user) { }
使用复数形式:
public void printUsers(List<User> users) { }
public void addRoles(Set<String> roles) { }
public void execute(Runnable task) { }
public void handle(Consumer<String> callback) { }
参数本身也是局部变量,但命名应更偏向“接口语义”:
// 参数:强调“输入是什么”
public void calculatePrice(BigDecimal basePrice) { }
// 局部变量:强调“计算过程”
BigDecimal discountPrice = basePrice.multiply(0.9);
✅ 推荐:
public User(String name, int age) {
this.name = name;
this.age = age;
}
或使用 a 前缀(不强制):
public User(String aName, int aAge) {
name = aName;
age = aAge;
}
保持与原方法一致:
@Override
public boolean equals(Object obj) { }
interface UserService {
void deleteUser(Long userId);
}
| 场景 | 示例 |
|---|---|
| Spring | HttpServletRequest request |
| MyBatis | @Param("userId") Long userId |
| JUnit | expectedException |
| Lombok | 与字段名一致 |
Java 方法参数命名:camelCase + 语义清晰 + 避免缩写 + 与业务一致
如果你有具体代码示例或某个框架场景(如 Spring / MyBatis / Lombok),我可以给出更针对性的命名建议。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。