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. iOS 在iphoneX上运行的app没有icon图标,在其他手机上有图标

    今天朋友问了一个问题,在iPhoneX上运行的app没有icon图标,在其他手机上有图标. 一开始我以为是没放iPhoneX的图标,后面朋友解决了,告诉了我原因,这里记录下吧: 原因: 图标格式问题, ...

  2. html的css背景图的repeat

    HTML里background-image中,可以设置background-repeat实现平铺,前面博文中关于css样式换行的(相关博文:超文本css样式换行),其中有个三个div组合的,中间的di ...

  3. 《Django企业开发实战 高效Python Web框架指南》胡阳

    链接:https://pan.baidu.com/s/1NmN_IT5RvevCMt9bZCW1-g提取码:2ki9

  4. Object.defineProperty()方法学习笔记

    这是js中一个非常重要的方法,ES6中某些方法的实现依赖于它,VUE通过它实现双向绑定 此方法会直接在一个对象上定义一个新属性,或者修改一个已经存在的属性, 并返回这个对象 参数 Object.def ...

  5. GPU Skinning 结合 Instanced 高效实现大量单位动画

    GPU Skinning 与 Instance 蒙皮动画 计算骨骼信息 蒙皮 GPU Skinning CPU Skinning 与 GPU Skinning 实现方式 Skinning 类型 优点 ...

  6. 【数据库开发】windows下使用c++调用redis

    不废话,unix下c++调用 redis可以看这个: http://blog.csdn.net/youngqj/article/details/8266177 ==================== ...

  7. Linux 安装环境初始化检查 安装Nginx

    一 .阿里云 centos 6.8 32 位裸环境 实现:Linux Nginx mysql php redis 查看当前安装的服务 [root@iZgahlk1l73998Z etc]# servi ...

  8. Shiro加盐加密

    接本人的上篇文章<Shiro认证.角色.权限>,这篇文章我们来学习shiro的加盐加密实现 自定义Realm: package com.czhappy.realm; import org. ...

  9. windows服务器入门 使用FileZilla搭建FTP服务

    下载FileZilla Server(注意:我搭建ftp的时候,有一个fz的版本会报错,百度了老半天都没有解决这个问题,回来我换了一个版本就可以.如果你们也出现了不知道怎么搞定的问题的话   可以考虑 ...

  10. Asp.Net Core集成Swagger

    工作中一个公司会有很多个项目,项目之间的交互经常需要编写 API 来实现,但是编写文档是一件繁琐耗时的工作,并且随着 API 的迭代,每次都需要去更新维护接口文档,很多时候由于忘记或者人员交替的愿意造 ...