Java开发基础知识之规范篇——排版规范

网上流行的开发规范有很多,阿里巴巴、华为开发规范等等,当往往看得最舒服的才是最适合自己!

简单汇总了一下以往自己在项目开发中的编码风格规范:

1、程序块要采用缩进风格编写,缩进的空格数为4个。

2、分界符(如大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类和接口的定义、以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。

3、较长的语句、表达式或参数(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。

4、多个短语句写在一行,即一行只写一条语句

5、if, for, do, while, case, switch, default 等语句自占一行,且if, for, do, while等语句的执行语句无论多少都要加括号{}。

6、相对独立的程序块之间、变量说明之后必须加空行。

原文地址:https://www.cnblogs.com/cokeHuan/p/11897353.html

时间: 2024-08-05 04:30:41

Java开发基础知识之规范篇——排版规范的相关文章

Java开发基础知识之学习篇——Object类

JDK中所有类的基类——java.lang.Object 1.类构造器 创建java对象的途径之一,通过new关键字调用构造器完成对象的实例化,或通过构造器对象进行相应的初始化.在JDK的objec类源码中,系统会自动添加一个无参构造器. public object(){ Object obj = new Object(); //构造一个Object类的对象 } 2.registerNatives方法 静态代码块是一个类子啊初始化过程中必定会执行的内容,所以在类加载时会执行该方法,通过该方法来注

Java开发基础知识之学习篇——双亲委派机制

Java自带的类加载器: 启动类加载器(Bootstrap ClassLoader):这是由C++语言实现的一个加载器,是虚拟机的一部分,随虚拟机启动运行.负责将存放在/lib目录下面或者被-Xbootclasspath参数所指定的路径中的类. 扩展类加载器(Extension ClassLoader):负责加载/lib/ext目录中的,或者被java.ext.dir系统变量指定路径中的所有类库.如果把自己的jar包放到此位置,会首先用这个加载器加载. 应用程序类加载器(Application

Java开发基础知识之学习篇——String

String .StringBuffer 和StringBuilder 的区别是什么?从几个方面来解释. 1.可变性 String类中使用final关键字字符数组保存字符串,它的长度是不可变的. StringBuffer 和 StringBuilder 都继承自AbstractStringBuilder类,而在AbstractStringBuilder中也是使用字符数组保存字符串,但是没有用final关键字修饰,所以这两种对象都是可变的. 2.线程安全性 String中的对象是不可变的,就是常量

iOS开发——总结篇&IOS开发基础知识

IOS开发基础知识 1:Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id) 对象在运行时获取其类型的能力称为内省.内省可以有多种方法实现. 判断对象类型 -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) isMemberOfClass: classObj 判断是否是这个类的实例 实例一: Person *person = [[Person alloc] init]; //父

Java Web基础知识之Filter:过滤一切你不想看到的事情

不要相信客户端, 所以做后端的人都应该铭记的事情.因为前端传过来的数据并不总是合法和有效的,所以后端是对访问资源的最后一道保护伞.之前我们在Spring中说到过AOP编程,AOP基础知识,它就可以在执行我们的方法之前进行一些预处理和验证来保护后端的资源.不难想到她的实现方式和本篇要说的过滤器的实现原理应该是相同的,都是通过Java的动态代理实现的(自己的理解). 在Java Web的开发中,过滤器用于拦截请求,并对ServletRequest对象进行处理,我们可以想到的,它可以用来验证权限.加密

IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token

本文引用了简书作者“骑小猪看流星”技术文章“Cookie.Session.Token那点事儿”的部分内容,感谢原作者. 1.前言 众所周之,IM是个典型的快速数据流交换系统,当今主流IM系统(尤其移动端IM)的数据流交换方式都是Http短连接+TCP或UDP长连接来实现.Http短连接主要用于从服务器读取各种持久化信息:比如用户信息.聊天历史记录.好友列表等等,长连接则是用于实时的聊天消息或指令的接收和发送. 作为IM系统中不可或缺的技术,Http短连的重要性无可替代,但Http作为传统互联网信

什么才是java的基础知识?

近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考. 我做j2ee开发已经超过十载,作为过来人,心路历程估计和大家差不多.编码的前几年,很长一段时间觉得java简单,开发实现各种功能都很轻松,代码写起来根本不费劲(主要是因为写的代码都是一些功能业务逻辑).但同时自己心里明白,自己其实没有什么水平,自己这3,4年以来学懂的东西就那么多,其他人几个月就可以

黑马程序员——Java多线程基础知识2

多线程协同 线程间的通讯:我们对资源的操作动作不同,比如说两个卡车一个拉煤一个装煤.但是他们共享了一个资源. 怎么样把这个资源拿出来?怎样把车装满?这个资源当然是一个类,他里面的组成元素就是对象!!现在我们就要有操作对象的思想了,我用对象把这车装满,现在一车装一个对象. 等待唤醒机制: 用的不是sleep是wait.flag标记,这是两人沟通的方式.其实每个标记就要做一次等待或者notify,判断wait,改值notify.线程池.notify唤醒里面的线程,按顺序唤醒.wait和notify必

C#开发 —— 基础知识

C# 用于开发可以运行在 .Net 平台上的应用程序,C# 本身只是一种语言,尽管它是用于生成面向 .Net 环境的代码,但它本身不是 .Net 的一部分 Console.WriteLine 命名空间 -- using 指令将命名空间名所标识的命名空间内的类型成员导入到当前编译单元中,从而可以直接使用(不必加上完全限定名) 一种程序组织形式 -- 内部,或外部 (对外公开的组织结构) 可以在项目的命名空间中定义命名空间,但这样不能用using 来引用自定义的命名空间   C# 的所有语句都必须位