前言

在上一篇文章中,壹哥带领大家开始编写了第一个 Java 案例,在我们的 cmd 命令窗口中输出了”Hello World“这句话。并且我还给大家留了一个小作业,你做出来了吗?

但是在上一篇文章中,我们学习的”Hello World“案例,里面有一些基础的语法,比如 public、class、static 等,这些到底是啥东东,有什么含义和要求,对于小白来说,可能还都不是很清楚。所以接下来在本文中,壹哥会给大家讲解一下 Java 最基本的语法要求,带大家认识 Java 里的标识符及其命名规范,认识 Java 里的关键字、保留字有哪些。

---------前戏已做完,精彩即开始---------

全文大约【3000】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图视频,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考......

一. Java 标识符

1. 代码回顾

在认识什么是 Java 里的标识符之前,咱们还是先把上节课中的那段代码拿过来复习一下,如下:

public class HelloWorld {

    public static void main(String[] args){
System.out.println("Hello World!");
} }

壹哥之前跟大家解释过上述代码的含义:

public:关键字,表示“公开的”;

class:关键字,表示用来定义一个类;

HelloWorld:类名,要保证和我们的文件名一样;

static:关键字,表示静态的,大家先记住意思,后面我会再细讲;

void:表示方法没有返回值,大家先记住意思,后面我再细讲;

main:主方法的名称,表示程序的入口,固定名称;

String[]:字符串数组类型;

args:方法参数的名称,随意;

System.out.println("Hello World!"):用来输出“Hello World!”这句话。

其实,在这段代码中,有些就属于”标识符“。具体哪些是标识符呢?我们继续往下看!

2. 标识符

首先,我们得认识一下什么是”标识符“。

Java 中的包、类、方法、参数和变量等要素,都需要有个命名,这些名字就是标识符,使用字符串进行表示。

从上述定义中可知,在 Java 中有包、类、方法、参数、变量等几种要素,这些要素都需要命名。而这些名字需要使用字符串来命名,这些字符串就叫作”标识符“。举个栗子,你的名字叫做”二狗“,”二狗“就是标识符!

那么有的小伙伴就动歪脑筋了,既然标识符就是用来命名的字符串,那我是不是可以随便命名?有没有什么要求呢?大家想想,你自己身份证上的姓名可以随便命名吗?是不是会有一定的要求和规范呢?

3. 命名规则(重点)

我们首先要记住 Java 标识符的命名规则,如下:

①. 标识符由 字母(含英、中、日、俄等)、数字、下划线"_" 和 美元符号 $ (音: dollar)组成,如 age、G7、_value、$salary;

②. 不能以数字开头,如 123abc;

③. 严格区分大小写,如 class 与 Class 是不同的;

④. 长度无限制(一般不要超过 15 个字符);

⑤. 不能是 Java 中的保留字和关键字。

下面壹哥给大家举个栗子,看看标识符是否合法:

4. 命名规范

标识符命名习惯:尽量做到见名知意,如 Order 订单类,不要写 a、b、c 这种名称;

变量名/方法名/参数名:首字母要小写。如果名称由多个单词组成,第一个单词的首字母应小写,剩下的单词首字母应大写(驼峰式命名法),例如:xxxYyyZzz、numCounter;

类名: 单词首字母应大写,如果类名由多个单词组成,每个单词的首字母都应大写(帕斯卡命名法),例如:XxxYyyZzz、OrderCancel;

包名: 包名应该小写。由多单词组成时,所有字母也都应小写,例如:xxxyyyzzz、chinaedu;

常量名: 所有字母都应大写,常量名由多单词组成时,每个单词用下划线连接,例如:XXX_YYY_ZZZ、GOOD_LUCK。

5. 规则与规范的区别

规则是必须要遵守的”法则“,属于强制性的,比如交通规则,不遵守就不行,会罚钱扣分出事故!

规范是建议你遵守的”建议“,属于鼓励性的,比如道德规范,建议你能遵守,否则你会让人鄙视!

我们在开发时,必须遵守 Java 标识符的命名规则,尽量遵守 Java 标识符的命名规范。一般在企业开发时,对命名规范都会有自己的特殊要求,我们要按照公司自己的要求进行代码编写。总之,一个合格的程序员,决不能随心所欲的想怎么编码就怎么编码。就好比一个合格的人,也不能在这个社会上随心所欲的”胡作非为“,比如是要遵守特定的规则和规范的!

二. 关键字与保留字

在上面讲解标识符时,壹哥跟大家说过,标识符不能是 Java 自带的关键字和保留字。那到底什么是关键字和保留字呢?

1. 关键字

Java 中有一些被赋予了特定含义,有专门用途的字符串被称为关键字(keyword)。这些关键字全部都是小写的,关键字分类如下:

有的小伙伴可能会惊呼,Java 中有这么多的关键字啊?!我怎么记得下来?其实,你不用专门去记这些关键字,以后我们每一天都要编写代码,这些关键字自然而然就会被你记住了!

另外在上面这些关键字中,有几个用来修饰类的方法和属性的关键字,我们把它们称为修饰符,主要有两类修饰符:

  • 访问控制修饰符:default、public、protected、private

  • 非访问控制修饰符:final、abstract、static、synchronized

目前这个阶段,壹哥希望大家先记住 4 个”访问控制修饰符“即可,其他的我们再慢慢学习和掌握。

2. 保留字

Java 中还有一些没有定义特定用途,但保留备用的关键字,如 goto、const 等,被称为保留字。也就是说,有些关键字现在暂时没有用到,但有可能以后会用到,为了”以备不时之需“,Java 预留了一些关键字,这就是保留字。这些保留字与关键字一样,也不能被我们用来定义标识符!

三. 编码规范

除了以上这些关于标识符的命名规则和规范之外,壹哥还希望大家从今天开始,在编码时要养成良好的编码规范。我这里所谓的编码规范,是指在编写代码时希望大家遵守的一些”建议“。当然,这些规范如果你不遵守,代码并不会出错,但有可能会被你的领导和同事 diss,说你”不讲究“。今天壹哥先给大家说两个会伴随我们整个开发生涯的常见编码规范。

1. 代码缩进

在 Java 代码中,每一个层级的代码都应该使用 tab 键(制表位)进行间隔,间隔 4 个字符。比如下面的代码:

不同层级的代码要间隔 4 个字符,并用花括号"{ }"分割,而且"{ }"要采用上图所示的配对方式。注意不要采用如下方式:

上图这种"{ }"花括号配对方式,不是 Java 的编码风格,不建议大家这样写!虽然没有错误,但不符合绝大多数 Java 程序员的编码习惯和审美要求。你的所有同事都顺时针转圈,你为什么非要逆时针转圈呢?

2. 代码注释

另外,我们要从学编程开始,就养成写注释的习惯。所谓的注释,就是指对代码含义的一段解释性文字。这段文字并不会被编译进字节码中,所以你不用担心会影响执行效率,它只是用来给程序员解释代码含义的。Java 中的注释有 3 种:

  • 单行注释,// 注释内容

  • 多行注释,/* 注释内容 */

  • 文档注释,/* *注释内容 */

注释的使用如下所示:

/**
作者:一一哥
描述:这是一个入门程序
*/
public class Hello{
/**
方法的作用:这是程序的入口
方法的参数:
方法的返回值:
*/
public static void main(String[] args){
//这行代码的含义是在控制台输出内容
System.out.println("注释.....");
/*
以下这段代码的功能是
打印输出一个三角形
*/
System.out.println(".");
System.out.println("..");
System.out.println("...");
System.out.println("....");
System.out.println(".....");
}
}

当然,这里只是先让大家养成一个良好的编码规范,关于注释的具体用法,壹哥会在后面的文章中再详细讲解。

----------正片已结束,来根事后烟----------

四. 结语

至此,壹哥就把 Java 的标识符、关键字、保留字和编码规范给大家讲解完毕。其中标识符的命名规则大家必须要记住,这是本文的重点!所以需要各位牢牢记住 Java 标识符的命名规则有哪些要求?另外要尽量记住常用的命名和编码规范,不要去做违反大多数人习惯的事情!

截止到现在,我们使用的编码工具还都是 windows 系统自带的 txt 记事本工具,这个工具用起来比较费劲。所以在下一篇文章中,壹哥会按递进的顺序,给大家介绍几个效率更高的开发工具,敬请期待下一篇哦。

另外如果你独自学习觉得有很多困难,可以加入壹哥的学习互助群,大家一起交流学习。

五. 今日作业

1. 第一题

在评论区说说 Java 标识符命名有哪些要求?

2. 第二题

以下 Java 标识符,命名错误的是?

A| a1b2c3

B| 123abc

C| _123abc

D| &123abc

3. 第三题

Java 的代码缩进,应该缩进几个字符?评论区给出你的答案吧。

Java语言标识符的命名规范(超详细讲解)的更多相关文章

  1. Java基础—标识符及命名规范

      什么是标识符符? 凡是可以由自己命名的地方都称为修饰符. 例: 项目名 ,包名 ,类名 .方法名 2.   命名规范. ①    不可使用java关键字和保留字,但是可以包含关键字和保留字. ②  ...

  2. 前端模块化IIFE,commonjs,AMD,UMD,ES6 Module规范超详细讲解

    目录 为什么前端需要模块化 什么是模块 是什么IIFE 举个栗子 模块化标准 Commonjs 特征 IIFE中的例子用commonjs实现 AMD和RequireJS 如何定义一个模块 如何在入口文 ...

  3. Java语言基本语法(一)————关键字&标识符(Java语言标识符命名规范&Java语言的包名、类名、接口名、变量名、函数名、常量名命名规则 )

    一.关键字 关键字的定义和特点 定义:被Java语言赋予特殊含义,用做专门用途的字符串(单词). 特点:关键字中所有字母均为小写 下面列举一些常用的关键字. 用于定义数据类型的关键字:byte.sho ...

  4. java中变量和标识符名命名规范

    变量存放的是内存地址,当定义一个变量后,我们可以通过变量名找到该内存地址,可以修改该内存区间的值. 标识符的命名规范:首字母:字母,下划线,$符号:其余部分:数字,字母,下划线,$. 标识符应该避开j ...

  5. C语言文件操作函数大全(超详细)

    C语言文件操作函数大全(超详细) 作者: 字体:[增加 减小] 类型:转载 本篇文章是对C语言中的文件操作函数进行了详细的总结分析,需要的朋友参考下   fopen(打开文件)相关函数 open,fc ...

  6. Java中的名称命名规范:

    Java中的名称命名规范:(不遵守,也不会出现编译的错误) 包名:多单词组成时所有字母都小写:xxxyyyzzz 类名.接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz 变量名.方法名: ...

  7. 5. Java的注释,标识符、标识符的命名规范

      什么是标识符符? 凡是可以由自己命名的地方都称为修饰符. 例: 项目名 ,包名 ,类名 .方法名 2.   命名规范. ①    不可使用java关键字和保留字,但是可以包含关键字和保留字. ②  ...

  8. Java基础入门 - 标识符及其命名规范

    类名.变量名.方法名都称为标识符 标识符命名规范: 由字母(A-Z或a-z).数字.下划线(_)和美元符($)中的一种或多种组合而成 不可以数字开头 大小写敏感 关键字不能用作标识符 合法标识符如:D ...

  9. Java编程风格与命名规范整理

    基本命名规范 包命名 包名按照域名的范围从大到小逐步列出,恰好和Internet上的域名命名规则相反. 由一组以“.”连接的标识符构成,通常第一个标识符为符合网络域名的两个或者三个英文小写字母. Pe ...

  10. Java 基础 标识符的命名

    java标识符的命名规则和规范 首先,标识符是在Java程序中能够自己进行命名的地方,例如:类名,方法名,接口名,变量名,常量名...等. 命名规则: 1.由26个英文字母的大小写,0-9的数字,_或 ...

随机推荐

  1. labwindows excel 不同电脑上无法保存

    存到c盘以外的盘,c盘因为权限问题可能无法写入

  2. opencv基本函数详解笔记

    一.读取保存图片 Mat scrImage = imread("1.jpg"); //显示图像 imshow("原图", scrImage); //窗口等待 w ...

  3. Linux 使用Samba或NFS实现文件共享

    SAMBA文件共享服务 Samba是一款开源的文件共享软件,经过简单配置就能够实现Linux系统与Windows系统之间的文件共享工作. 例1:配置Samba服务前,先删掉Samba服务主配置文件中的 ...

  4. C 语言 数制

    C 语言 数制 数制也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法.计算机处理的信息必须转换成二进制形式数据后才能进行存储和传输.计算机中,经常使用的进制有二进制.八进制.十进制.十六进 ...

  5. WPF Toolbox 添加image

    //public  Toolbox()        //{  //          ItemsControl items = this as ItemsControl;  //          ...

  6. python——numpy

    NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库. import numpy a = num ...

  7. K8S的kubectl命令详解

    一.kubectl 基本命令 1.陈述式资源管理方法: 1.kubernetes集群管理集群资源的唯一入口是通过相应的方法调用apiserver的接口 2.kubectl 是官方的CLI命令行工具,用 ...

  8. JavaScript基础学习之一

    目录 let和var之间的区别 作用域不同 变量提升 暂时性死区(temporal dead zone,简称 TDZ) 相同作用域下的重复声明 脚本调用 数据类型 Boolean Object 对象 ...

  9. 正向代理和反向代理和spring的动态代理模式有几种?默认是那种?如何切换?

    spring的动态代理模式有几种?默认是那种?如何切换? spring的动态的代理模式有两种 JDK动态代理,基于接口(默认代理模式),CGLIB动态代理(若要使用需要进行配置) JDK动态代理是由j ...

  10. SQL Server 手工 锁表、查询被锁表、解锁相关语句

    SQL Server 手工 锁表.查询被锁表.解锁相关语句 --锁表(其它事务不能读.更新.删除) BEGIN TRAN SELECT * FROM <表名> WITH(TABLOCKX) ...