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.运算符:程序中用来运算的符号 ...
随机推荐
- join() 方法详解及应用场景
总结:join方法的功能就是使异步执行的线程变成同步执行.也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用jo ...
- l2dct
http://paste.ubuntu.com/15664711/ diff -crbB ns-allinone-2.35/ns-2.35/queue/red.cc ns-2.35/queue/red ...
- 【Redis】Linux下Redis安装与redis-desktop-manager使用(无法连接Redis服务器解决方法)
新手小白开始学习nosql数据库Redis,首先从安装入手. 全文分两部分:Linux下安装redis,可视化工具redis desktop manager的简单使用. 一.安装 下载,解压缩和编译R ...
- .net下log4net的使用
这里以控制台应用程序为例 首先是要添加引用: 安装后可以看到项目中多了log4net的引用: 添加应用程序配置文件app.config,配置log4net <?xml version=" ...
- MySQL Bug导致异常宕机的分析流程
原文链接:http://click.aliyun.com/m/42521/ 摘要: 本文主要通过一个bug来记录一下如何分析一个MySQL bug的崩溃信息. 版本:Percona 5.7.17-11 ...
- 新建一个去除storyboard的项目
新建一个去除storyboard的项目 1. 新建项目并删除 *.storyboard 以及与之相关的杂项 2. 设置 UIWindow 的 rootViewController 复制粘贴代码如下 s ...
- Git使用本地仓库之基本操作
1.Git是什么? 一个分布式版本控制系统,和SVN类似,但远比SVN强大的一个版本控制系统 ①Git可以方便的在本地进行版本管理,如同你本地有一个版本管理服务器一样我们可以选择在合适的时间将本地版本 ...
- buff/cache 内容释放
oscache远程服务器特别卡,top命令查看获得 buff/cache 占据内存特别大,使用以下命令清理缓存: swap清理: swapoff -a && swapon -a 注意: ...
- 泛微e-cology和Oracle无法启动的解决方案
最近公司的泛微OA无法访问,Oracle数据库也无法正常启动,尝试了好多方法,终于解决了,先说说基本情况,希望能给碰到同样问题的朋友带来一点帮助. 服务器操作系统:Window s Server 20 ...
- SpringBoot Mybatis 执行自定义SQL
1.XML中执行自定义SQL. https://blog.csdn.net/u012427355/article/details/80654806 2.注解执行自定义SQL @Select(" ...