Java 命名约定

原文 - Java Naming Conventions - By Lokesh Gupta

Java 命名约定体提一种指导规范,在应用开发的过程中,程序开发者遵守这些指导规范来产出一致且易读的代码。如果团队合作中并不遵守这些规范,他们可能编写出很难读懂的应用程序代码。

Java 中广泛使用驼峰规则来命名方法,变量等,并使用首字母大写命名类和接口。

下面,我们用案例来说明这些命名规则。

1. 包命名

包命名必须是以全部小写的域名(比如:com, org, net, etc) 开始的一组单词。包名的后续部分可以根据自身的内部命名预定而有所不同。

java 复制代码
package com.howtodoinjava.webapp.controller;

package com.company.myapplication.web.controller;

package com.google.search.common;

2. 类命名

Java 中,类命名一般使用名词,首字母大写的驼峰式命名:

java 复制代码
public class ArrayList {}

public class Employee {}

public class Record {}

public class Identity {}

3. 接口命名

Java 中,接口命名一般使用形容词 。接口名是首字母大写的驼峰式方式。在一些场景中,当接口表示一个类集合,比如List 和 Map,也可以使用名词

java 复制代码
public interface Serializable {}

public interface Clonable {}

public interface Iterable {}

public interface List {}

4. 方法命名

方法应该总是使用动词 。它们代表某个动作,所以方法名应该尽可能清晰表明这种状态。方法名可以由单个或者 2-3 个单词来表述这种动作。这些单词应该使用驼峰式标记法。

java 复制代码
public Long getId() {}

public void remove(Object o) {}

public Object update(Object o) {}

public Report getReportById(Long id) {}

public Report getReportByName(String name) {}

5. 变量命名

所有的实例、静态和方法的参数变量都应该符合驼峰式标记法。它们应该简短并清晰表明他们的目的。临时变量 可以是单个字符,比如循环中的计时器。

java 复制代码
public Long id;

public EmployeeDao employeeDao;

private Properties properties;

for(int i = 0; i < list.size(); i++) {

}

6. 常量命名约定

Java 常量应该是全大写的字符 ,多个字符之间使用 _ 字符来连接。

请确保在常量中使用 final 修饰符。

java 复制代码
public final String SECURITY_TOKEN = "...";

public final int INITIAL_SIZE = 16;

public final Integer MAX_SIZE = Integer.MAX;

7. 泛型命名约定

泛型参数名应该是单个大写的字符。推荐使用 T 字母。在 JDK 类中,字母 E 通常用于作为集合类中,字母 S 通常用于服务加载类中,字母 KV 通常用于映射类中的键和值的类型。

java 复制代码
public interface Map <K, V> {}

public interface List<E> extends Collection<E> {}

Iterator<E> iterator() {}

8. 枚举命名

和类常量命名相似,枚举名称应该是全大写字符

java 复制代码
enum Direction { NORTH, EAST, SOUTH, WEST }

9. 注解命名

注释命名遵循首字母大写规范。它们可以是形容词,动词或者名词,这基于它们的需求选择。

java 复制代码
public @interface FunctionalInterface() {}

public @interface Deprecated {}

public @interface Documented {}

public @Async Documented {}

public @Test Documented {}

本文,我们讨论了在编写一致性代码需要遵循的 Java 中的命名规则,这会让编写的代码可读性和维护性更高。

相关推荐
孟陬4 分钟前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
树獭叔叔5 分钟前
13-KV Cache与位置编码表:大模型推理加速的核心技术
后端·aigc·openai
BER_c5 分钟前
前端权限校验最佳实践:一个健壮的柯里化工具函数
前端·javascript
想用offer打牌7 分钟前
一站式了解四种限流算法
java·后端·go
嘻哈baby7 分钟前
用 C++ 写线程池是怎样一种体验?
后端
兆子龙8 分钟前
别再用 useState / data 管 Tabs 的 activeKey 了:和 URL 绑定才香
前端·架构
sudo_jin8 分钟前
前端包管理器演进史:为什么 npm 之后,Yarn 和 pnpm 成了新宠?
前端·npm
嘻哈baby11 分钟前
SQL Server 和 Oracle 以及 MySQL 有哪些区别?
后端
绝无仅有11 分钟前
Redis过期删除与内存淘汰策略详解
后端·面试·架构
武子康15 分钟前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive