一篇文章带你入门Java之编程规范

目录
  • 引言
  • 命名规则
  • 代码排版
    • 1.代码缩进对齐
    • 2.遇到分号换行
    • 3.大括号、括号等成对出现
    • 4.加上注释
  • Java注释
    • 注释的作用
    • 注释的3种类型
    • 给代码加上单行注释
    • 给代码加上多行注释
    • 给代码加上文档注释
  • 总结

引言

♀ 小AD:小明哥,之前你教我的Helloworld实例我写完了,超级简单呢,我一下子就搞定了
♂ 明世隐:是吗,那不错哦。
♀ 小AD:我还举一反三、自由发挥了一波
♂ 明世隐:这波怎么说?
♀ 小AD:怎么说?我说我在第5层,你信不
♂ 明世隐:我信,你举的什么、反的什么?
♀ 小AD:我写了个小鲁班连招类,可以顺序释放连招,好玩。
♂ 明世隐:挖槽,你这波是要在大气层吗?上头了吧你。
♀ 小AD:明哥别这样说,我就觉得好玩
♂ 明世隐:好,我觉得你脑子转的挺快,来给明哥看看。
♀ 小AD:好的,代码给你看看

package learnJava;
public class 鲁班连招类 {
	public static void main(String[] args) {
		System.out.println("发现敌人");
		System.out.println("释放3技能");System.out.println("平A1");System.out.println("平A2");
System.out.println("平A3");System.out.println("平A4");
			System.out.println("释放1技能");
			System.out.println("平A1");System.out.println("平A2");System.out.println("平A3");System.out.println("平A4");
System.out.println("释放2技能");System.out.println("平A1");System.out.println("平A2");
			System.out.println("平A3");System.out.println("平A4");
			System.out.println("敌人已经被消灭");}}

运行代码

♀ 小AD:明哥,咋样?我这连招,KO敌人,刺客突脸我可以把2技能先放
♂ 明世隐:很(yao)好(lao)耶(ming)
♀ 小AD:那可不!我觉得我可以统治下路了。
♂ 明世隐:你的为啥放技能后要平A4下。
♀ 小AD:因为这个平A 4下我用来代表的是小鲁班的被动扫射效果,表示攻击速度很快。
♂ 明世隐:嗯嗯,真不错,有编程的天赋,看来我选对了徒弟哈,但是,还是让我来说说你的问题。
♀ 小AD:???
♂ 明世隐:我说让我来说说你的问题。
♀ 小AD:有什么问题,我这连招不好吗?你上次教我的,你是不是藏了什么?
♂ 明世隐:你耗子未汁吧你!
♀ 小AD:明哥,直接说吧,别这样
♂ 明世隐:我说你代码写的乱七八糟。
♀ 小AD:没问题啊,你看我不是运行给你看了吗?结果犀利
♂ 明世隐:确实犀利,我说的是代码很乱。
♀ 小AD:我不懂你的意思
♂ 明世隐:就是不规范。
♀ 小AD:哦,我不知道哦,那你给我讲讲呗
♂ 明世隐:来,下次写这样的代码,别在朋友圈发说你认识我,我老脸往哪里放。
♀ 小AD:(大写的尴尬)

命名规则

类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如:

ThisIsAClassName

thisIsMethodOrFieldName

命名规则必须遵循以下规则:

1)、名称只能由字母、数字、下划线、$符号组成

2)、命名时不能以数字开头

3)、在命名是绝对不能出现Java关键字。

4)、见名识意—看到名字就知道是什么。

当然这些都不是硬性规定,你可以按照自己的想法去命名。但那样的代码可读性很差。

public class 鲁班连招类 {

♀ 小AD:你是说我这个类的命名不满足上面的第一条是吗
♂ 明世隐:可以这么说。
♀ 小AD:那eclipse为什么没有报错。
♂ 明世隐:其实是可以用中文命名的,类名和方法名用中文其实也是可以成功运行的,因为只要是Unicode字符,就符合规范,不过这里的规范指的是标识符规范,代码规范是不提倡用中文的。
♀ 小AD:这样啊,那我把类名改成lz
♂ 明世隐:你这是什么意思?
♀ 小AD:lz就是连招的意思啊
♂ 明世隐:可是我看不懂诶!
♀ 小AD:那改lianzhao
♂ 明世隐:类开头用大写,然后采用驼峰命名。
♀ 小AD:那改成LianZhao就可以撒
♂ 明世隐:你为什么不用英文来命名,用拼音感觉不舒服。
♀ 小AD:那连招的英语是什么?
♂ 明世隐:你问我干嘛?我不会
♀ 小AD:哈哈,明哥你都不会啊,我也不会。
♂ 明世隐:那说好了,就这样命名了,嘿嘿。

代码排版

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

2.在函数体的开始、类和接口的定义、以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。

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

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

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

6.出现分号尽量换行。

♀ 小AD:哥,那么多那么麻烦,我都看不明白.
♂ 明世隐:其实也不用刻意去记,我帮你把代码编辑一下你就很容易看明白。
♀ 小AD:好

针对你的代码分4步

1.代码缩进对齐

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("发现敌人");
		System.out.println("释放3技能");System.out.println("平A1");System.out.println("平A2");
		System.out.println("平A3");System.out.println("平A4");
		System.out.println("释放1技能");
		System.out.println("平A1");System.out.println("平A2");System.out.println("平A3");System.out.println("平A4");
		System.out.println("释放2技能");System.out.println("平A1");System.out.println("平A2");
		System.out.println("平A3");System.out.println("平A4");
		System.out.println("敌人已经被消灭");}}

2.遇到分号换行

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("发现敌人");
		System.out.println("释放3技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("释放1技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("释放2技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敌人已经被消灭");}}

3.大括号、括号等成对出现

修改后:

package learnJava;
public class LianZhao {
	public static void main(String[] args) {
		System.out.println("发现敌人");
		System.out.println("释放3技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("释放1技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("释放2技能");
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敌人已经被消灭");
	}
}

4.加上注释

♀ 小AD:明哥什么是注释啊
♂ 明世隐:注释就是说明
♀ 小AD:说明什么?
♂ 明世隐:说明这个类是用来做什么的,这个方法是什么功能等。
♀ 小AD:好像明白了一点
♂ 明世隐:给你举个例子,你就完全清楚了。

♂ 明世隐:上面的图知道什么意思吧
♀ 小AD:当然啊,就是技能说明呗
♂ 明世隐:对啊 ,那你如果不熟悉技能的话,你不是可以看看这个技能干啥用的,有多少伤害、冷却时间多少、蓝耗多少吗?
♀ 小AD:是的,没有这个说明,除非对这个英雄比较熟悉,否则就不知道了。
♂ 明世隐:那你拿到一段代码的时候,如果没有说明,你可能搞不清楚这个代码是干嘛的吧。
♀ 小AD:嗯,但现在这个代码我知道 啊
♂ 明世隐:目前你当然是知道的,因为第一这个代码简单,容易看明白,如果逻辑复杂的呢?第二记忆都是一段时间的,如果过些时候你再看到某段代码,你也想不起来是干嘛的了,必须一行行的去看代码,然后你才能知道,这样不就很麻烦了吗?
♀ 小AD:好像是这个道理。
♂ 明世隐:所以说就跟这个技能描述一样的,我们也可以改代码加上说明,称之为注释。
♀ 小AD:原来是这个意思啊,那注释应该怎么加?
♂ 明世隐:那我们来加一下吧。

Java注释

注释的作用

很多java新手在敲代码的时候都不会在意注释这个东西,但其实,注释在Java编程中也是必不可少的。

在学习过程中,我们应该也发现要敲的代码越来越多,越来越繁琐,而且做编程本来就很需要思维逻辑,在碰到需要使用大量代码的时候,就需要在每个关键点做好注释,让我们明白这段代码的含义,同时,如果要请教别人的话,别人看你的代码更加方便。

而在以后的工作当中,肯定会有团队协作的,这种时候,也是非常需要注释的,不然在后期合并的时候是会非常麻烦的。

注释的3种类型

1.单行注释
//内容1
//内容2

2.多行注释
/*
内容1
内容2
*/

3.文档注释
/**
*内容1
*内容2
*/

给代码加上单行注释

public class LianZhao {
	//主函数
	public static void main(String[] args) {
		System.out.println("发现敌人");
		//释放3技能
		System.out.println("释放3技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//释放1技能
		System.out.println("释放1技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//释放2技能
		System.out.println("释放2技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敌人已经被消灭");
	}
}

♀ 小AD:明哥,有句话我想说但不敢说?
♂ 明世隐:说吧,不喷你
♀ 小AD:我感觉你这个注释没什么用,你不加注释,我也知道这个写的是放技能、平A啊,你现在加这个注释也是多余的。
♂ 明世隐:。。。,是这样的,因为你这个代码是最基础的,就一句打印输出,并且输出的内容也写的很清楚,所以你感觉没必要,但在开发中,代码的逻辑就复杂的多,你不加注释别人可能就看不明白你 代码、或者说要花额外的时间去理解你的代码;甚至于你自己再次回过头来看的时候,没有注释,都要重新去阅读代码,才知道是干嘛的。
♀ 小AD:哦,这样啊,那我明白了

给代码加上多行注释

给代码加上文档注释

注释后完整的类代码

package learnJava;
/**
 * 模拟鲁班连招的类
 * @author 小AD
 * @date 2021-07-04
 */
public class LianZhao {
	/*
	 * 主函数
	 * 此函数模拟了鲁班的连招
	 * 3技能+扫射+1技能+扫射+2技能+扫射
	 */
	public static void main(String[] args) {
		System.out.println("发现敌人");
		//释放3技能
		System.out.println("释放3技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//释放1技能
		System.out.println("释放1技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		//释放2技能
		System.out.println("释放2技能");
		//扫射
		System.out.println("平A1");
		System.out.println("平A2");
		System.out.println("平A3");
		System.out.println("平A4");
		System.out.println("敌人已经被消灭");
	}
}

♂ 明世隐:你看代码是不是比你开始的要好看、工整的多。
♀ 小AD:哇明哥,这样别人看到代码就知道是我写的呀。
♂ 明世隐:对啊 ,就知道你的大名了。
♀ 小AD:哇注释果然很有用。
♂ 明世隐:别光知道可以写上你的大名哈,其他的也很重要。
♀ 小AD:不会不会,我一下就明白怎么用这个注释了,谢谢明哥!

除了上述内容还要注意:如何编写良好的Java代码

♀ 小AD:哇明哥,我觉得我好像学Java很简单呢
♂ 明世隐:对啊,Java本来就不难,关键看你自己愿意学不咯。
♀ 小AD:我当然愿意学,我就感觉跟明哥上分一样简单,紧紧跟着明哥就行。
♂ 明世隐:知道就好,要的就是上分如喝水、学Java如张飞吃豆芽。
♀ 小AD:哥你说的什么?也不押韵啊。
♂ 明世隐:你重点是在这吗你?快打开游戏,先上几星再说,你连招不是很溜吗。
♀ 小AD:来,当然了,我边学Java又边学连招,今天整爆他们。

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • Java基础之命名规范的详解

    前言 在编程的世界里,每种语言都有自己的一些规范.下面,就带你了解Java命名规范.对于程序员来说,如果想学好一门语言,想要自己写出来的代码能被他人轻易地读懂,深入的学习命名规范是非常必要的一件事情.在这里,总结了一下Java的命名规范. 一.Java命名规范: 1. 项目名称全部小写; 2. 包名全部小写; 3. 类名首字母大写,如果类名由多个字母组成,每个首字母都需要大写; 如:public class MyFirstClass{} 4. 变量名和方法名首字母小写,如果由多个单词组成,其后的

  • Javadoc标签和Javadoc注释规范说明

    最近看源码,一些Javadoc常见的注释整理下 Javadoc是Sun公司提供的一个技术,从程序源代码中抽取类.方法.成员等注释形成一个和源代码配套的API帮助文档. Javadoc命令是用来生成自己的API文档,使用方式: javadoc 源文件名.java javadoc -d 文档存放目录 源文件名.java 通过IDEA生成Javadoc : Tools -> Generate JavaDoc javadoc标签 标签 说明 @author 作者标识 @version 版本号 @retu

  • IDEA 阿里JAVA规范插件的具体使用

    1.打开IDEA,点击File->Settings->Plugins,如下图 2.查找alibaba插件并安装重启IDEA 3.安装完成后,就可以开始体验了 首先如果你想把老的项目统统检查一遍,那么可以使用[编码规约扫描],右键项目->编码规约扫描,如下 如果你的代码不符合阿里巴巴java规范的话,会有如下的扫描信息,可以据此信息改善我们的代码 以上提示信息对应的代码如下,快捷键Ctrl+F1用来查看详细的中文提示信息 并可以快速修复补全规约中的约束代码 最后,我们来查看下阿里巴巴jav

  • 解决javaBean规范导致json传参首字母大写将永远获取不到问题

    javaBean规范导致json传参首字母大写获取不到 规范中另一个特别的地方就是: 1.第二个字母为大写的属性名要区别对待 如果属性名的第二个字母是大写的,那么该属性名直接用作 getter/setter 方法中 get/set 的后部分,就是说大小写不变. 2.属性是首字母大写 次字母小写是,你永远都找不到它的 getter/setter 方法的. 3.对于 boolean 类型属性的 getter 方法 是 isXxx() 还是 getXxx() 就自己决定了,isXxx() 应该更接近于

  • Java中16条的代码规范

    目录 一.MyBatis 不要为了多个查询条件而写 1 = 1 二. 迭代entrySet() 获取Map 的key 和value 三.使用Collection.isEmpty() 检测空 四.初始化集合时尽量指定其大小 五.使用StringBuilder 拼接字符串 六.若需频繁调用Collection.contains 方法则使用Set 七.使用静态代码块实现赋值静态成员变量 八.删除未使用的局部变量.方法参数.私有方法.字段和多余的括号. 九.工具类中屏蔽构造函数 十.删除多余的异常捕获并

  • 一篇文章带你入门Java之编程规范

    目录 引言 命名规则 代码排版 1.代码缩进对齐 2.遇到分号换行 3.大括号.括号等成对出现 4.加上注释 Java注释 注释的作用 注释的3种类型 给代码加上单行注释 给代码加上多行注释 给代码加上文档注释 总结 引言 ♀ 小AD:小明哥,之前你教我的Helloworld实例我写完了,超级简单呢,我一下子就搞定了 ♂ 明世隐:是吗,那不错哦. ♀ 小AD:我还举一反三.自由发挥了一波 ♂ 明世隐:这波怎么说? ♀ 小AD:怎么说?我说我在第5层,你信不 ♂ 明世隐:我信,你举的什么.反的什么

  • 一篇文章带你入门java网络编程

    目录 基于TCP/IP协议的通信 基于UDP协议的通信 InetAddress 案例演示 (简易聊天室) UDP 演示 总结 基于TCP/IP协议的通信 TCP/IP协议 TCP/IP协议.会在通信两端建立连接(虚拟连接),用于发送和接收数据 TCP/IP协议是一种可靠的网络协议,它通过重发机制来保证这种可靠性 通信的实现 ServerSocket用来监听来自客户端的连接,当没有连接时,它处于阻塞状态 客户端使用Socket连接到指定的服务器 基于UDP协议的通信 UDP协议 UDP协议不会在通

  • 一篇文章带你入门Java修饰符

    目录 定义 分类 访问控制修饰符 非访问控制修饰符 修饰符的使用说明 修饰类 修饰方法 访问控制修饰符 非访问控制修饰符 修饰变量 总结 定义 Java修饰符:修饰符用来定义类.方法或者变量,通常放在语句的最前端. 分类 主要分为2类: 访问控制修饰符 非访问控制修饰符 访问控制修饰符 可以使用访问控制符来保护对类.变量.方法和构造方法的访问.分为以下4中权限:private,default,protected,public. 权限说明: 修饰符 当前类 同包 子类(不同包) 不同包(其他类)

  • 一篇文章带你入门java多线程

    目录 一.描述 二.一个线程的生命周期 三.线程的优先级 四.创建线程 五.示例 1.Runnable接口 2.继承Thread 3.Callable 和 Future 创建线程 4.测试 总结 一.描述 Java 给多线程编程提供了内置的支持. 一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销. 这里定义和线程相关的另一个术语 - 进程:一个进程包括由操作系统分配的内存空间,包含一个

  • 一篇文章带你入门java注解

    目录 注解 什么是注解 内置注解 元注解 自定义注解 实例 总结 注解 什么是注解 Annotation是从JDK5.0开始引入的新技术 Annotation的作用: 1.不是程序本身,可以对程序做出解释(这一点和注释(comment)没什么区别) 2.可以被其他程序(比如:编译器等)读取 Annotation的格式: ​ 注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如: ​ @SuppressWarnings(value="unchecked")

  • 一篇文章带你入门java面向对象

    目录 一.继承 示例: 二.重载 三.接口 1.接口与类相似点: 2.接口与类的区别: 3.语法 四.枚举 1.定义 2.迭代枚举元素 3.在 switch 中使用枚举类 总结 一.继承 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为 本章就以人.学生.老师作为例子.学生和老师都继承人这个对象,都有人的特征和行为,人就是父类,老师和学生就是子类 示例: 人类: package com.zhouzy.base.t7;

  • 一篇文章带你入门java工厂模式

    目录 总结: Java设计模式-工厂模式 什么是工厂模式? 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象. 简单编写一个类: 1.简单工厂模式 本程序非常简单就是通过接口的子类为接口对象实例化,但是本操作存在什么样的问题呢? 之前一直在强调,主方法或者是主类是一个客户端,客户端的操作应该越简单

  • 一篇文章带你入门Java字面量和常量

    目录 引言 概念 字面量 字面量的分类 常量 总结 引言 ♀ 小AD:哥,前两天我没有闪现到刺客脸上了吧 ♂ 明世隐:在这方面做的有进步. ♀ 小AD:明哥教的好,通过学习Java关键字,游戏水平也得到了提升,一举两得,舒服. ♂ 明世隐:可是你看到残血还是上头啊,是了多少次,你说? ♀ 小AD:5.6次吧 ♂ 明世隐:岂止5.6,起码10次. ♀ 小AD:这不是看到200金币,经不住诱惑吗 ♂ 明世隐:关爱残血,你学哪里去了,游戏中就不能多一些人间的关爱吗?你就不能关爱一下放暑假的小弟弟小妹妹

  • 一篇文章带你入门Java继承

    目录 Java中继承 什么是继承: 为什么要用继承: 学习总结: 继承关键字:extends 总结 Java中继承 什么是继承: 继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为. 为什么要用继承: 可以去掉重复代码,方便后期维护 举个列子,大家应该都玩过英雄联盟,每个英雄都是一个类,如果说不用继承的话每次都要重复定义每个英雄的成员属性,如下图我举了一个MF,一个EZ的列子 public class MissFortu

  • 一篇文章带你入门Java封装

    目录 什么是封装 如何实现封装 代码展示 构造方法 注意点: 代码展示 总结 封装的优点 什么是封装 Java中的封装是将数据(变量)和作用于数据(方法)的代码作为一个单元包装在一起的机制. 在封装中,类的变量将从其他类隐藏,并且只能通过当前类的方法访问. 如何实现封装 可以分为两步: 第一步:将类的变量声明为private. 第二步:提供公共set和get方法来修改和获取变量的值. 代码展示 public class User { private String name; private in

随机推荐