Notes 20180508 : Java基本程序设计结构之关键字与标识符
我们成功书写了HelloWorld后,又深入了解了main函数,提到过main并非是关键字,可什么又是关键字呢?这其实就是这章要研究的内容,本节研究关键字与标识符,在标识符中我们也会讲解一下Java中的驼峰命名;
1.1 关键字
在Hello World中,我们发现其中有很多单词是固定的,这其实就是Java中的关键字,关键字在Java中有特殊的含义,下面我们来具体认识一下,这里先简单介绍一下Java中的关键字,后面我们在学习中会针对一些特定的关键字进行特别的解析。
1.1.1 关键字的定义及特点
- 关键字是Java语言里事先定义的,有特别意义的单词,有时又叫保留字,含有特别意义的变量。
- Java的关键字对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等
- 关键字不能用作变量名、方法名、类名、包名和参数。
- Java语言规定关键字不能作为标识符。
- 目前共有50个Java关键字,其中,"const"(常数)和"goto"(转到)这两个关键字在Java语言中并没有具体含义。Java语言把它们列为关键字,只是因为"const"和"goto"是其他某些计算机语言的关键字。
- 关键字中所有字母都为小写。
1.1.2 关键字的分类
关键字根据用途可以分为一下几类:
1.1.2.1 用于定义数据类型的关键字
- class:类
- interface:接口
- byte:基本数据类型之一,字节类型
- short:基本数据类型之一,短整数类型
- int:基本数据类型之一,整数类型
- long:基本数据类型之一,长整数类型
- float:基本数据类型之一,单精度浮点数类型
- double:基本数据类型之一,双精度浮点数类型
- char:基本数据类型之一,字符类型
- boolean:基本数据类型之一,布尔类型
- void:声明当前成员方法没有返回值
1.1.2.2 用于定义数据类型值的关键字
- true:真
- false:假
- null:空
1.1.2.3 用于定义流程控制的关键字
- if:条件语句的引导词
- else:用在条件语句中,表明当条件不成立时的分支
- while:用在循环结构中
- do:用在do-while循环结构中
- switch:分支语句结构的引导词
- case:用在switch语句之中,表是其中的一个分支
- default:默认,例如,用在switch语句中,表明一个默认的分支
- for:一种循环结构的引导词
- break:提前跳出一个块
- continue:回到一个块的开始处
- return:从成员方法中返回数据
1.1.2.4 用于定义访问权限修饰符的关键字
- private:一种访问控制方式:私用模式,只能自己访问
- protected:一种访问控制方式:保护模式,允许子类和同包类访问
- public:一种访问控制方式:共用模式,允许所有外部类访问
访问权限修饰符权限从高到低排列是public ,protected private。
1.1.2.5 用于定义类,函数,变量修饰符的关键字
- abstract:表明类或者成员方法具有抽象属性
- final:用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变
- static:表明具有静态属性
- synchronized:表明一段代码需要同步执行
1.1.2.6 用于定义类与类之间关系的关键字
- extends:表明一个类型是另一个类型的子类型,这里常见的类型有类和接口
- implements:表明一个类实现了给定的接口
1.1.2.7 用于定义建立实例及引用实例,判断实例的关键字
- new:用来创建新实例对象
- this:指向当前实例对象的引用
- super:表明当前对象的父类型的引用或者父类型的构造方法
- instanceof:用来测试一个对象是否是指定类型的实例对象
1.1.2.8 用于异常处理的关键字
- try:尝试一个可能抛出异常的程序块
- catch:用在异常处理中,用来捕捉异常
- finally:用于处理异常情况,用来声明一个基本肯定会被执行到的语句块
- throw:抛出一个异常
- throws:声明在当前定义的成员方法中所有需要抛出的异常
1.1.2.9 用于包的关键字
- import:表明要访问指定的类或包
- package:包
1.1.2.10 其他修饰符关键字
- native:用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
- strictfp:用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
- transient:声明不用序列化的成员域
- volatile:表明两个或者多个变量必须同步地发生变化
- assert:用来进行程序调试
1.2 标识符
在上面我们知道了关键字不能用于变量名、类名、方法名等,那么Java中的用来表示这些名词的单词是什么呢?有什么命名规则呢?答:标识符;下面我们来解读一下。
1.2.1 标示符的定义、特点及命名
- Java 语言中,对各种变量、方法和类等要素命名时使用的字符序列称为标识符。
- 标识符由任意顺序的字母大小写,数字,下划线‘_’,美元符$ 组成
- Java语言中标识符中的字母是严格区分大小写的。Java语言使用Unicode标准字符集,最多可以标识65535个字符,因此Java语言中的字母不仅包括通常的拉丁文字a、b、c等,还包括汉字、日文以及其他许多语言中的文字。
- Java 标识符有如下命名规则:
- 标识符应以字母、下划线 、美元符开头【下面的标识符是合法的:myName,My_name、Points,$points,_sys_ta,OK,_23b,_3_
下面的标识符是非法的:#name,25name,class,&time,if】。
- 标识符不能是关键字。注意:Java 标识符选取应注意“见名知意”且不能与 Java 语言的关键字重名。
- Java中严格区分大小写。如good和Good是不同的两个标识符。标识符中不能有空格;
1.2.2 Java中的名称规范-驼峰命名
- 包名:多单词组成时所有字母都小写。xxx.yyy.zzz 例如:cn.itcast.student,域名反转
- 类名接口名:多单词组成时,所有单词的首字母大写。XxxYyyZzz
- 变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大xxxYyyZzz
- 常量名:所有字母都大写。多单词时每个单词用下划线连接。XXX_YYY_ZZZ
Notes 20180508 : Java基本程序设计结构之关键字与标识符的更多相关文章
- 7.20实习培训日志-Java基础程序设计结构
Java基础程序设计结构 在 Math 类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程,如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类,它使用 ...
- Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)
Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...
- java基础(2):注释、关键字、标识符、数据
1. 注释.关键字与标识符 大家可以安装一个文本编辑软件notepad++,有利于java代码的查看与编写. 1.1 程序注释 通常我们需要在源代码中添加文字用来对进行代码解释说明,但这些文字并不是J ...
- java基本程序设计结构总结
学习一门语言:(1)掌握它的表现形式(2)这些语言什么应用. 1.1关键字 1.关键字是被赋予了特殊含义的单词. 2.关键字特点:关键字所有字母都小写. 3.类名的每一个单词开头必须大写. 1.2标识 ...
- [JAVA学习笔记]JAVA基本程序设计结构
一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.println ...
- java核心技术 第3章 java基本程序设计结构
类名规范:以大写字母开头的名词 若由多个单词组成 每个单词的第一个字母应大写(驼峰命名法) 与.java文件名相同 运行程序:java ClassName(dos命令) 打印语句:System.ou ...
- 201671010142 Java基本程序设计结构学习的感悟
1.在课堂检测过程中发现自己很大的问题,有些是在学习c语言时就遗留下来的问题,比如对于自加自减,强制类型转换的问题,在Java中又多了一个数据类型就是字节型,而且当字节想加就会自动生成int型,必须进 ...
- Java基本程序设计结构
一.要求: 1.设平面上有一个m×n 的网格,将左下角的网格点标记为(0,0)而右上角的网格点标记为(m,n).某人想从(0,0)出发沿网格线行进到达(m,n),但是在网格点(i,j)处他只能向上行进 ...
- 2.0JAVA基础复习——JAVA语言的基础组成关键字和标识符
JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...
随机推荐
- Enum,Int,String的互相转换
Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型.如果没有显式声明基础类型,则使用Int32.编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举. 注意:枚举类型的基类 ...
- Sun Solairs系统添加裸设备
Sun Solaris系统添加裸设备对表空间进行扩容的大体操作步骤. 1.查看当前卷组信息 --查看当前卷组信息#vxdg list --查看当前卷组中物理磁盘的使用情况#vxdg free |gre ...
- Oracle EBS 清除并发请求和(或)管理器数据 请求
请求说明:该请求可以清除平时提交的请求日志文件.并发管理器的日志文件.报表输出文件.并发请求和并发管理器进程的历史记录信息. 参数说明:(红色标注字段为必输项)1. 实体:ALL:清除请求历史记录. ...
- REST framework 视图层
我们之前写的 get post 请求 要写很多 我们现在可以使用rest——framework给我们封装好的类 GenericAPIView 给我们提供了自动匹配验证的信息内部封装 from r ...
- Git提交代码自动触发JenKins构建项目
1.需求场景 用户提交代码后自动触发jenkins构建项目 流程图如下: 2.JenKins安装Gitlab Hook Plugin插件 3.JenKins配置 4.Gitlab Hook Plugi ...
- 导出Excel 2007 (NPOI)
今天在导出Excel2007时报了个错,问是否修复,点yes就提示修复正常了,但具体什么原因没说,如图 之前简单的导出代码是这样写的 public static void ExportToWeb(st ...
- php面试题之一——php核心技术
一.PHP核心技术 1.写出一个能创建多级目录的PHP函数(新浪网技术部) <?php /** * 创建多级目录 * @param $path string 要创建的目录 * @param $m ...
- 字符串到-->list到-->字典的转变
怎么把字符串变成字典呢?? 要先转成列表list(用split方法),然后再把列表转成字典,这时候就用到-->怎么把列表转换成字典呢??列表的索引和字典的新增,然后就能把字符串转成字典了.
- 获取索引--------用range()和len()
a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ'] for i in range(len(a)): print(i+1,a[i])
- [webpack] Webpack 别名
存在这样一种情况,有时候项目中,存在一些 公共的组件,通常会抽取出来,放在一个统一的文件夹中. 然后大家就可以再 各个 模块里面 愉快的使用该 组件了. 但是也带来一个坑爹的问题 组件放在 com ...