Java语言和其他编程语言一样,使用标识符作为变量、对象的名字,也提供了系列的关键字用以实现特别的功能。

一、分隔符

  Java语言里的分号(;)、花括号({})、方括号([])、圆括号(())、空格、圆点(.)都具有特殊的分隔作用,因此被统称为分隔符。

  (1)分号

  Java语言采用分号(;)作为语句的分隔,因此每个Java语句必须使用分号作为结尾。

  Java程序允许一行书写多个语句,每个语句之间以分号隔开即可;一个语句也可以跨多行,只要在最后结束的地方使用分号结束即可。

  以下语句都是合法的:

 int age = 25; String name = "张三";
String hello = "你好" +
"Java";

  Java语句可以跨越多行书写,但一个字符串、变量名不能跨越多行。

  以下语句是非法的:

 // 字符串不能跨越多行
String a = "aaaaaaaa
bbbbbbbbbb";
// 变量名不能跨越多行
String na
me = "zhangsan";

  一般而言,虽然Java语句可以跨越多行书写,但是从程序的可读性角度来看,最好一个语句一行。

  (2)花括号

  花括号的作用是定义一个代码块,一个代码块就是“{”和“}”所包含的一段代码,代码块在逻辑上是一个整体。

  对Java语言来说,类定义部分必须放在一个代码块里,方法体部分也必须放在一个代码块里。除此之外,条件语句中的条件执行体和循环语句中的循环体通常也放在代码块里。

  花括号一般是成对出现的。

  (3)方括号

  方括号的主要作用是用于访问数组元素,方括号通常紧跟数组变量名,而方括号里指定数组元素的索引。

  如下代码:

 // 把整数3赋值给a数组的第三个元素
a[2] = 3;

  (4)圆括号

  圆括号是一个功能非常丰富的分隔符:定义方法时必须使用圆括号来包含所有的形参声明,调用方法是也必须使用圆括号来传入实参值;不仅如此,圆括号还可以把表达式中某个部分括成一个整体,保证这个部分优先计算;除此之外,圆括号还可以作为强制类型转换的运算符。

  (5)空格

  Java语言使用空格分隔一条语句的不同部分。Java语言是一门格式自由的语言,所以空格可以出现在Java程序的任何地方,也可以出现任意多个空格,但不要使用空格把一个变量名隔开成两个,这将导致程序出错。

  Java语言中的空格包含空格符(Space)、制表符(Tab)和回车(Enter)等。

  除此之外,Java源程序还会使用空格来合理缩进代码,增强可读性。

  (6)圆点

  圆点(.)通常用作类/对象和它的成员(包括成员变量、方法和内部类)之间的分隔符,表明调用某个类或某个实例的指定成员。

二、标识符规则

  标识符就是用于给程序中变量、类、方法命名的符号。

  Java语言的标识符必须以字母、下划线(_)、美元符($)开头,后面可以跟任意数目的字母、数字、下划线、美元符。此处的字母并不局限于26个英文字母,而且可以包含中文字符、日文字符等。

  Java语言是区分大小写的,因此abc和Abc是两个不同的标识符。

  使用标识符时,需要注意如下规则:

    (1)标识符可以由字母、数字、下划线和美元符组成,其中数字不能大头;

    (2)标识符不能是Java关键字和保留字,但可以包含关键字和保留字;

    (3)标识符不能包含空格;

    (4)标识符只能包含美元符,不能包含@、#等其他特殊字符。

三、Java关键字

  Java语言中有一些具有特殊用途的单词被称为关键字,当定义标识符时,不要让标识符和关键字相同,否则将引起错误。

  Java的所有关键字都是小写的,TRUE、FALSE和NULL都不是Java关键字。

  Java一共包含50个关键字,如下图所示:

  上面的50个关键字中,enum是从Java 5新增的关键字,用于定义一个枚举。而goto和const这两个关键字也被称为保留字,保留字的意思是,Java现在还未使用这两个关键字,但可能在未来的Java版本中使用这两个关键字。

  不仅如此,Java还提供了三个特殊的直接量:true、false和null;Java语言的标识符也不能使用这三个特殊的直接量。

Java学习第四天之标识符与关键字的更多相关文章

  1. Java学习笔记【二、标识符、关键字、数据类型】

    基础语法 大小写敏感 类名用帕斯卡命名法 方法名用驼峰命名法 所有java程序,源码文件名须与类名一致 所有java程序,均以 public static void main(string []arg ...

  2. 从.Net到Java学习第四篇——spring boot+redis

    从.Net到Java学习系列目录 “学习java已经十天,有时也怀念当初.net的经典,让这语言将你我相连,怀念你......”接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装 ...

  3. java学习(四)

    学号 20189214 <Java程序设计>第四周学习总结 教材学习内容总结 枚举 枚举是JDK1.5版本新增的特性(泛型.For-each等如今被广泛应用的特性也是由JDK1.5时所新增 ...

  4. Java学习笔记四---打包成双击可运行的jar文件

    写笔记四前的脑回路是这样的: 前面的学习笔记二,提到3个环境变量,其中java_home好理解,就是jdk安装路径:classpath指向类文件的搜索路径:path指向可执行程序的搜索路径.这里的类文 ...

  5. Java学习第四篇:数组,排序,查找

    一.数组 1.一维数组 (1).数组的定义 数据类型 数组名[]=new 数据类型[大小] public class Demo1 { public static void main(String[] ...

  6. JAVA学习第四十七课 — IO流(一):文件的读写

    输入流和输出流相对于内存 将外部设备的数据读取到内存中:输入 将内存中的数据写入外部设备中:输出 IO流经常使用基类 字节流的抽象基类:InputStream,OutputStream 字符的抽象基类 ...

  7. java学习(四)--- String 、StringBuffer、StringBuilder 和 数组

    对于 String.StringBuffer.StringBuilder比较一下 主要说说三者的不同 String 长度大小不可变 StringBuffer 和 StringBuilder 长度可变 ...

  8. Java学习笔记四:Java的八种基本数据类型

    Java的八种基本数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. Java基本类型共有八种,基本类型可以分为三类,字符类型char,布 ...

  9. Java学习十四

    学习内容: 1.Junit 2.maven安装配置环境 一.Junit实例演示步骤 1.引入jar包 junit包需要引入hamcrest-core包,否则会报错 2.测试如下代码 package c ...

随机推荐

  1. Ext.net中Combobox如何绑定数据库中的值

    ];      ];      " />       </Items> </ext:ComboBox>

  2. 利用PHP应用程序中的远程文件包含(RFI)并绕过远程URL包含限制

    来源:http://www.mannulinux.org/2019/05/exploiting-rfi-in-php-bypass-remote-url-inclusion-restriction.h ...

  3. iOS-iphone网络编程总结

    iphone网络编程总结 一:确认网络环境3G/WIFI 1. 添加源文件和framework        开发Web等网络应用程序的时候,需要确认网络环境,连接情况等信息.如果没有处理它们,是不会 ...

  4. Jrebel激活方法

    参考 https://www.yanjiayu.cn/posts/3eecb801.html https://gitee.com/gsls200808/JrebelLicenseServerforJa ...

  5. 【C#设计模式3】工厂方法模式

    一.引言 在简单工厂模式中讲到简单工厂模式的缺点,有一点是——简单工厂模式系统难以扩展,一旦添加新产品就不得不修改简单工厂方法,这样就会造成简单工厂的实现逻辑过于复杂,然而本专题介绍的工厂方法模式可以 ...

  6. Unity3D 原来Unity比较新的版本支持中文

    注意: Unity 2018.2 以上版本才可以

  7. 白嫖百度 Tesla V100 笔记(在 AI Studio 上使用 tensorflow 和 pytorch 的方法)

    登陆百度 AI Studio 并按照教程创建新项目 启动项目并进入控制台 下载 Anaconda3/Miniconda3 安装脚本 安装在 ~/work/*conda3 目录 输入命令 source ...

  8. 【VS开发】【数据库开发】windows下libevent x64库静态编译

    按照libevent的文档,使用VC的nmake -f Makefile.nmake即可编译32位release模式.因为项目中要求编译64位的版本,需要在Makefile.nmake中添加一个LIB ...

  9. redis windows 扩展Redis igbinary 下载地址

    http://windows.php.net/downloads/pecl/releases/redis/3.1.2/ http://windows.php.net/downloads/pecl/re ...

  10. DB2输出每隔10分钟的数据

    一.输出1-100的数据 此处参考 https://bbs.csdn.net/topics/390516027 with t(id) as ( as id from sysibm.sysdummy1 ...