Java学习第四天之标识符与关键字
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学习第四天之标识符与关键字的更多相关文章
- Java学习笔记【二、标识符、关键字、数据类型】
基础语法 大小写敏感 类名用帕斯卡命名法 方法名用驼峰命名法 所有java程序,源码文件名须与类名一致 所有java程序,均以 public static void main(string []arg ...
- 从.Net到Java学习第四篇——spring boot+redis
从.Net到Java学习系列目录 “学习java已经十天,有时也怀念当初.net的经典,让这语言将你我相连,怀念你......”接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装 ...
- java学习(四)
学号 20189214 <Java程序设计>第四周学习总结 教材学习内容总结 枚举 枚举是JDK1.5版本新增的特性(泛型.For-each等如今被广泛应用的特性也是由JDK1.5时所新增 ...
- Java学习笔记四---打包成双击可运行的jar文件
写笔记四前的脑回路是这样的: 前面的学习笔记二,提到3个环境变量,其中java_home好理解,就是jdk安装路径:classpath指向类文件的搜索路径:path指向可执行程序的搜索路径.这里的类文 ...
- Java学习第四篇:数组,排序,查找
一.数组 1.一维数组 (1).数组的定义 数据类型 数组名[]=new 数据类型[大小] public class Demo1 { public static void main(String[] ...
- JAVA学习第四十七课 — IO流(一):文件的读写
输入流和输出流相对于内存 将外部设备的数据读取到内存中:输入 将内存中的数据写入外部设备中:输出 IO流经常使用基类 字节流的抽象基类:InputStream,OutputStream 字符的抽象基类 ...
- java学习(四)--- String 、StringBuffer、StringBuilder 和 数组
对于 String.StringBuffer.StringBuilder比较一下 主要说说三者的不同 String 长度大小不可变 StringBuffer 和 StringBuilder 长度可变 ...
- Java学习笔记四:Java的八种基本数据类型
Java的八种基本数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. Java基本类型共有八种,基本类型可以分为三类,字符类型char,布 ...
- Java学习十四
学习内容: 1.Junit 2.maven安装配置环境 一.Junit实例演示步骤 1.引入jar包 junit包需要引入hamcrest-core包,否则会报错 2.测试如下代码 package c ...
随机推荐
- LeetCode_26. Remove Duplicates from Sorted Array
26. Remove Duplicates from Sorted Array Easy Given a sorted array nums, remove the duplicates in-pla ...
- Hive之insert into与insert overwrite区别
一.实践先行,直接上手 1. hive 表及数据准备 建表,并插入初始数据.向表中插入 hive> use test; hive> create table kwang_test (id ...
- CentOS7.2配置LNMP环境并安装配置网站WordPress
1,安装环境查看 2,安装MySQL5.7.22 下载MySQL wget https://downloads.mysql.com/archives/get/file/mysql-5.7.22-1.e ...
- destoon 6.0 手机站支持在所有浏览器访问
我们的在本地调试destoon 6.0的手机站模板时,用浏览器的自带审查元素很不方便. 可是destoon 默认是在电脑端打不开手机站,如果这个设置能够去除掉,那就可以了. 去掉这个限制,指需要两步 ...
- 快速配置和切换http和https
<link href="//maze.gxrc.com/css/global.css" rel="stylesheet" type="text/ ...
- redis 设置后台守护运行的两种方式
第一种:进入src目录,执行 nohup ./redis-server & 第二种:redis.conf==> daemonize=yes,启动redis-server后面加redis. ...
- Vue双向数据绑定简易实现
一.vue中的双向数据绑定主要使用到了Object.defineProperty(新版的使用Proxy实现的)对Model层的数据进行getter和setter进行劫持,修改Model层数据的时候,在 ...
- 在React native 如何写if判断和for循环
在vue中一般在需要判断时都是通过if语句来实现的,但是在react native中一般则通过三元运算法来实现. 具体代码如下所示. import React from 'react'; import ...
- 三个思路解决413 Request Entity Too Large报错处理
最近一个项目当中,要求上传图片,并且限制图片大小,虽然在laravel当中已经添加了相关的表单验证来阻止文件过大的上传,然而当提交表单时,还没轮到laravel处理,nginx就先报错了.当你仔细看报 ...
- Redis SETNX实现分布式锁
1.某进程1执行 SETNX lock 以尝试获取锁 2.由于某进程2已获得了锁,所以进程1执行 SETNX lock 返回0,即获取锁失败 3.进程1执行 GET lock 来检测锁是否已超时,如果 ...