写点什么

Google 的 Java 编码规范

  • 2014-02-12
  • 本文字数:798 字

    阅读完需:约 3 分钟

Google 最近发布了一份完整的 Java 编码规范。规范的内容包括一些切实可行的硬性规定。Google 内部均遵守此规范。该规范不仅涵盖了代码格式,还包括其他类型的约定和编码标准。

该规范主要分为 6 大部分:源文件基本规范、源文件结构、代码格式、命名、编程实践和 Javadoc。_ 源文件基本规范 _ 说明文件名、文件编码、空格和特殊字符等规范要求。_ 源文件结构 _ 说明许可信息、package 和 import 声明、类成员顺序等规范要求。_ 代码格式 _ 用于说明源代码中大括号、缩进、换行、空格、括号、枚举、数组、switch 语句、注解、注释和修饰符等格式要求。_ 命名 _ 说明了标识符(包、类、方法、常量、属性、局部变量和类变量)的命名规范和驼峰大小写定义。_ 编程实践 _ 说明 @Override、异常、静态成员和终结器的用法。Javadoc 说明哪些地方需要 Javadoc,以及它的格式要求。

以下是从规范中摘录的一些内容:

  • import 中不能有通配符。
  • 重载方法应该放在一起连续出现。
  • 即使代码块中没有内容,或者只有一行代码,也必须使用大括号。
  • 2 空格缩进。
  • 列宽是 80 或 100 个字符。
  • 不能使用类似 C 语言的数组变量声明。
  • switch 语句中,必须包含 default 语句。
  • 修饰符的顺序应按照 Java 语言规范推荐的顺序。
  • 常量命名应使用 CONSTANT_CASE 格式(译注:所有字母大写,单词使用下划线分隔)。注意,所有常量都必须是 static final 成员,但并不是所有的 static final 成员都是常量。

更多内容请阅读 Google Java Style 。Oracle 也提供了官方的Java 语言编码规范。Google 还提供了其它语言的代码风格指南,包括C++、Objective-C、Python、Shell、HTML/CSS、JavaScript 和Lisp 等等。

原文英文链接: Google’s Java Coding Standards


感谢姚琪琳对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-02-12 02:4923740

评论

发布
暂无评论
发现更多内容

Wallys/QCN9074 WiFi 6E Card OpenWRT, IPQ6010,802.11ax/Support:QUECTEL RM500Q-GL/QCN9074 11ax 4x4 6G M.2

wallysmeng

性能测试技术笔记(二):如何准备测试环境和数据

老张

性能测试

再快一点?动态内容如何加速

蔡农曰

程序员 互联网

2023-01-03:超过5名学生的课。编写一个SQL查询来报告 至少有5个学生 的所有班级,返回结果不限顺序。请问sql语句如何写? +---------+ | class | +-----

福大大架构师每日一题

数据库 sql 福大大

基于 EventBridge API Destination 构建 SaaS 集成实践方案

阿里巴巴云原生

阿里云 云原生 EventBridge

爱奇艺:基于龙蜥与 Koordinator 在离线混部的实践解析 | 龙蜥技术

阿里巴巴云原生

阿里云 云原生 Koordinator

下载速度慢怎么办?使用华为云CDN,让网速更快更稳

i生活i科技

CDN

一些Web安全漏洞

穿过生命散发芬芳

HTTP 1月月更

模块四作业

张贺

架构训练营

外包学生管理系统详细架构设计文档

Geek_7d539e

创业邦2022中国未来独角兽100强揭晓:总估值超3000亿元,累计融资总额达685亿元;红杉中国、顺为资本成年度最佳捕手

创业邦

网络拥堵?上网体验差,还不赶紧看看华为云CDN!

i生活i科技

CDN

SpringBoot 自动装配原理,一文掌握!

程序员小毕

源码 程序员 面试 springboot 自动装配

Java高手速成│实战:应用数据库和GUI开发产品销售管理软件(2)

TiAmo

数据库 Java、 JDBC

机器学习服务活体检测算法荣获CFCA权威安全认证

HarmonyOS SDK

HMS Core

中国北京|HICOOL 2023 全球创业大赛

科兴未来News

Hicool 海外 #双创赛事#

架构训练营模块三作业

gigifrog

架构训练营

华为云CDN,多场景网络加速服务,为企业发展强势赋能

i生活i科技

CDN

为什么说IO密集型业务,线程数是CPU数的2倍?

Java永远的神

程序员 程序人生 后端 cpu io

市面上到底有没有免费的云渲染平台?

Renderbus瑞云渲染农场

云渲染 云渲染平台 免费云渲染平台

架构实战营 - 写出外包学生管理系统的架构文档

huiwen

架构实战营

如何导入本地数据?

Towify

云原生技术在离线交付场景中的实践

北京好雨科技有限公司

Kubernetes 云原生交付 离线交付

华为云弹性负载均衡服务,赋能现代企业加速发展

i生活i科技

ELB

阿里云 ACK One 多集群管理再升级:GitOps 多集群持续集成,统一报警管理

阿里巴巴云原生

阿里云 云原生 容器服务

RelativeLayout(相对布局)

芯动大师

Android Studio padding margin

vivo 实时计算平台建设实践

vivo互联网技术

大数据 flink 实时计算

如何用弹出对话框实现登录页非空提示?

Towify

云存储生态构建的技术基因和最佳实践

云布道师

阿里云 云存储

下载速度不尽人意,华为云CDN来助力,尽享高速体验!

i生活i科技

CDN

Google的Java编码规范_Java_Bienvenido David_InfoQ精选文章