IT兄弟连 Java语法教程 标识符和关键字
Java语言也和其它编程语言一样,使用标识符作为变量、对象的名字。也提供了一系列的关键字用以实现特别的功能。本小节将详细介绍Java语言的标识符和关键字等内容。
1.分隔符
Java语言里的分号“;”、花括号“{}”、方括号“[]”、圆括号“()”、空格、圆点“.”都具有特殊的分隔作用,因此被统称为分隔符。
Ø 分号
Java语言中对语句的分隔不是使用回车来完成的,Java语言采用分号“;”作为语句的分隔,因此每个Java语句必须使用分号作为结尾。Java程序允许一行书写多个语句,每个语句之间以分号隔开即可;一个语句也可以跨多行,只要在最后结束的地方使用分号结束即可。
例如下面语句都是合法的Java语句:
int age = 23; String name = "Snape";
String hello = "Hello" +
"Ling!" +
"I miss you!";
值得指出的是,Java语句可以跨越多行书写,但一个字符串、变量名不能跨越多行。例如,下面的Java语句是错误的:
String xdl = "兄弟连 //字符串不能跨越多行
IT教育";
String java //变量名不能跨越多行
ee = "JavaEE";
不仅如此,虽然Java语法允许一行书写多个语句,但从程序可读性角度来看,应该避免在一行书写多个语句。
Ø 花括号
花括号的作用就是定义一个代码块。一个代码块指的就是“{”和“}”所包含的一段代码,代码块在逻辑上是一个整体。对Java语言而言,类定义部分必须放在一个代码块中,方法体部分也必须放在一个代码块中。除此之外,有一个“{”出现则必然有一个“}”,反之亦然。
Ø 方括号
方括号的主要作用是用于访问数组元素,方括号通常紧跟数组变量名之后,而方括号里指定希望访问的数组元素的索引。例如如下代码:
arr[3] = 3; //这行代码试图为名为arr的数组的第四个元素赋值
Ø 圆括号
圆括号是一个功能非常丰富的分隔符:定义方法时必须使用圆括号来包含所有的形参声明,调用方法时也必须使用圆括号来传入实参;不仅如此,圆括号还可以将表达式中某个部分括成一个整体,保证这个部分优先计算;除此之外,圆括号还可以作为强制类型转换的运算符。
Ø 空格
Java语言使用空格分隔一条语句的不同部分。Java语言是一门格式自由的语言,所以空格几乎可以出现在Java程序的任何地方,也可以出现任意多的空格,但不要使用空格把一个变量名隔开成两个,这将导致程序出错。
Java语言中的空格包含空格符“Space”、制表符“Tab”、和回车“Enter”等。
除此之外,java源代码还会使用空格来合理缩进Java代码,从而提供更好的可读性。
Ø 圆点
圆点通常用作类/对象和它的成员(包括成员变量、方法和内部类)之间的分隔符,表明调用某个类或某个实例的指定成员。
2.Java标识符命名规则
标识符就是用于给程序中变量、类、方法命名的符号。Java语言的标识符必须以字母、下划线“_”、美元符号“$”开头,后面可以跟任意数目的字母、数组、下划线“_”和美元符号“$”。此处的字母并不局限于26个英文字母,甚至可以包含中文字符、日文字符等。
由于Java支持Unicode字符集,因此Java的标识符可以使用unicode所能表示的多种语言的字符。Java语言是区分大小写的,因此abc和ABC是两个不同的标识符。
使用标识符时,需要注意如下规则:
ü 标识符可以由字母、数字、下划线“_”和美元符号“$”组成,其中数字不能开头。
ü 标识符不能是Java的关键字或保留字,但是可以包含关键字和保留字。
ü 标识符不能包含空格。
ü 标识符中可以使用中文,但是强烈不建议使用。
3.Java关键字
Java语言中有一些具有特殊用途的单词被称为关键字(keyword),当定义标识符时,不要让标识符和关键字相同,否者将引起错误。例如下面的代码将无法通过编译。
int boolean; //试图定义一个名为boolean的变量,但boolean是关键字不能作为标识符
Java的关键字都是小写的,TRUE、FALSE和NULL都不是Java关键字。
Java目前一共包含了50个关键字,如表3.1所示。
表1 Java关键字

上面的50个关键字中,enum是从Java 5新增的关键字,用于定义一个枚举。而goto和const这两个关键字也被称为保留字(reserved word),保留字的意思是,Java现在还未使用这两个关键字,但是可能在未来的Java版本中使用这两个关键字;不仅如此,Java还提供了三个特殊的直接量(literal):true、false和null;Java语言的标识符也不能使用这三个特殊的直接量。
IT兄弟连 Java语法教程 标识符和关键字的更多相关文章
- IT兄弟连 Java语法教程 变量1
什么是变量 在Java程序中,变量是基本的存储单元.是在程序运行中值可以改变的一块内存区域.变量是通过标识符(变量名).变量类型及可选的初始化器来定义的,此外,所有的变量都有作用域,作用域定义了变量的 ...
- IT兄弟连 Java语法教程 Java的发展历程
只有少数几种编程语言对程序设计带来过根本性的影响.其中,Java的影响由于迅速和广泛而格外突出.可以毫不夸张的说,1995年Sun公司发布的Java1.0给计算机程序设计领域带来了一场变革.这场变革迅 ...
- IT兄弟连 Java语法教程 数组 数组的初始化
Java语言中数组必须先初始化,然后才可以使用.所谓初始化,就是为数组的数组元素分配内存空间,并为每个数组元素赋初始值. 这时有人会问,能不能只分配内存空间,不赋初始值呢?答案是肯定不行的,一旦为数组 ...
- IT兄弟连 Java语法教程 Java语法基础 经典面试题
1.Java语言中有几种基本类型?分别是什么?请详细说明每种类型的范围以及所占的空间大小? Java语言中有8中基本类型,分别是代表整形的byte.short.int和long,代表浮点型的float ...
- IT兄弟连 Java语法教程 注释与编码规范
在程序代码中适当地添加注释可以提高程序的可读性和可维护性.好的编码规范可以使程序更易阅读和理解.下面将介绍Java中的集中代码注释以及应该注意的编码规范. 代码注释 通过在程序代码中添加注释可提高程序 ...
- IT兄弟连 Java语法教程 Java语言的其他特性
Java语言中除了非常重要的跨平台特性外,还有如下几个关键特性: ● 语法简单易学 Java语言的语法简单明了,容易掌握,而且是纯面向对象(OOP)的语言,Java语言的简单性主要体现在以下几个方面 ...
- IT兄弟连 Java语法教程 数组 多维数组 二维数组的初始化
二维数组的初始化与一位数组初始化类似,同样可以使用静态初始化或动态初始化. 1)静态初始化 静态初始化的格式如下: 数组名字 = new 数组元素的类型[][]{new 数组元素的类型[]{元素1,元 ...
- IT兄弟连 Java语法教程 数组 多维数组 二维数组的声明
Java语言里提供了支持多维数组的语法.但是这里还想说,从数组底层的运行机制上来看是没有多维数组的. Java语言里的数组类型是引用类型,因此数组变量其实是一个引用,这个引用指向真实的数组内存,数组元 ...
- IT兄弟连 Java语法教程 数组 使用foreach循环遍历数组元素
从JDK5之后,Java提供了一种更简单的循环:foreach循环,也叫作增强for循环,这种循环遍历数组和集合更加简洁.使用foreach循环遍历数组和集合元素时,无需获得数组或集合的长度,无需根据 ...
随机推荐
- linux中的交换分区(swap)及优化
SWAP(交换内存) 1.什么是交换内存? 在硬盘上创建一块区域,当你的物理内存快要被用光的时候,内核临时的 物理内存上的文件数据交换到硬盘上的这段区域上面,当物理内存有闲置的时候 在把交换内存上的数 ...
- 基于django的个人博客网站建立(七)
基于django的个人博客网站建立(七) 前言 网站效果可点击这里访问 这次在原来的基础上添加或修改一些小功能 具体内容 1.代码高亮 在原来的blog-details.html页面添加下面的代码: ...
- 带有Spring Boot和MySQL的Docker:简介(Part 1)
通过优锐课java学习分享中,我们看一下带有Spring Boot和MySQL的Docker教程.非常实用,分享给大家参考学习. Docker是一种技术,开发人员或DevOps团队可以使用容器来构建, ...
- 【一起刷LeetCode】在未排序的数组中找到第 k 个最大的元素
题目描述 在未排序的数组中找到第 k 个最大的元素.请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素. 示例 1: 输入: [3,2,1,5,6,4] 和 k = 2 ...
- Leetcode题解 - BFS部分题目代码+思路(896、690、111、559、993、102、103、127、433)
和树有关的题目求深度 -> 可以利用层序遍历 -> 用到层序遍历就想到使用BFS 896. 单调数列 - 水题 class Solution: def isMonotonic(self, ...
- 2019年全国高校计算机能力挑战赛初赛C++语言解答
1; 题目一 16.电商促销某种商品时,希望通过打折鼓励消费者组团消费.已知,团队消费金额=该团的人数和*商品单价.打折规则如下:当组团消费者数量不满50人时,商品消费金额没有折扣:消费者数量大于等于 ...
- Run-Time Check Failure #2 - Stack around the variable 's' was corrupted. 出现了 。
程序中存在内存越界,注意数组大小和数据大小.
- Web安全测试学习笔记-DVWA-SQL注入-2
接上一篇SQL注入的学习笔记,上一篇我通过报错信息得知后台数据库是MySQL(这个信息非常重要~),然后通过SQL注入拿到了用户表的所有行,其实我们还可以通过MySQL的特性来拿更多的信息. 1. 获 ...
- idea从mapper接口跳到xml文件
- java高并发系列 - 第26篇:学会使用JUC中常见的集合,常看看!
这是java高并发系列第26篇文章. 环境:jdk1.8. 本文内容 了解JUC常见集合,学会使用 ConcurrentHashMap ConcurrentSkipListMap Concurrent ...