我们成功书写了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基本程序设计结构之关键字与标识符的更多相关文章

  1. 7.20实习培训日志-Java基础程序设计结构

    Java基础程序设计结构 在 Math 类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程,如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类,它使用 ...

  2. Java之--Java语言基础组成(关键字、标识符、注释、常量和变量、运算符)

    Java语言基础组成-关键字.标识符.注释.常量和变量.运算符 Java语言由8个模块构成,分别为:1.关键字:2.标识符(包名.类名.接口名.常量名.变量名等):3.注释:4.常量和变量:5.运算符 ...

  3. java基础(2):注释、关键字、标识符、数据

    1. 注释.关键字与标识符 大家可以安装一个文本编辑软件notepad++,有利于java代码的查看与编写. 1.1 程序注释 通常我们需要在源代码中添加文字用来对进行代码解释说明,但这些文字并不是J ...

  4. java基本程序设计结构总结

    学习一门语言:(1)掌握它的表现形式(2)这些语言什么应用. 1.1关键字 1.关键字是被赋予了特殊含义的单词. 2.关键字特点:关键字所有字母都小写. 3.类名的每一个单词开头必须大写. 1.2标识 ...

  5. [JAVA学习笔记]JAVA基本程序设计结构

    一个简单的Java应用程序 public class FirstSample { public static void main(String[] args) { System.out.println ...

  6. java核心技术 第3章 java基本程序设计结构

    类名规范:以大写字母开头的名词 若由多个单词组成 每个单词的第一个字母应大写(驼峰命名法)  与.java文件名相同 运行程序:java ClassName(dos命令) 打印语句:System.ou ...

  7. 201671010142 Java基本程序设计结构学习的感悟

    1.在课堂检测过程中发现自己很大的问题,有些是在学习c语言时就遗留下来的问题,比如对于自加自减,强制类型转换的问题,在Java中又多了一个数据类型就是字节型,而且当字节想加就会自动生成int型,必须进 ...

  8. Java基本程序设计结构

    一.要求: 1.设平面上有一个m×n 的网格,将左下角的网格点标记为(0,0)而右上角的网格点标记为(m,n).某人想从(0,0)出发沿网格线行进到达(m,n),但是在网格点(i,j)处他只能向上行进 ...

  9. 2.0JAVA基础复习——JAVA语言的基础组成关键字和标识符

    JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...

随机推荐

  1. Spring Boot—14JdbcTemplate

    pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  2. JAVA 分布式 - 分布式介绍

    什么是分布式系统? 要理解分布式系统,主要需要明白一下2个方面: 1.分布式系统一定是由多个节点组成的系统. 其中,节点指的是计算机服务器,而且这些节点一般不是孤立的,而是互通的. 2.这些连通的节点 ...

  3. redis 命令行查看修改配置文件项、配置文件说明

    命令行查看修改配置文件项 config get | config set | config rewrite config get requirepass // 获取密码config set requi ...

  4. GIT速成

    安装工具与使用工具: GIT工具 :https://www.git-scm.com/download/ WINGDOWS图形界面工具:https://download.tortoisegit.org/ ...

  5. mybatis 在存储Integer、bigdecimal等java数据类型时,将0存成null

    我们的项目中,有关于金额的计算,所以,一般在java环境中我们使用bigdecimal来做运算和存储金额信息.数据库sqlServer2008用的float类型 问题是,当我将金额赋值成0时,很意外的 ...

  6. 在虚拟机中安装ubuntu16.04后不能全屏显示

    一.在终端输入:xrandr 二.输入:xrandr -s 1920x1440 参考网站:https://blog.csdn.net/qq_33202928/article/details/75021 ...

  7. [WinCE | VS2008 | Solution] VS2008 building WinCE projects taking a long time

    1. Open C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.CompactFramework.Common.targets 2. Find pa ...

  8. asp.net 一般处理程序实现网站验证码

    使用VerifyCode.ashx一般处理程序生成验证码,实现如下: using System; using System.Drawing; using System.Web; using Syste ...

  9. ORA-06512 问题解决

    SQL> select * from dba_role_privs where grantee='SUK';     GRANTEE GRANTED_ROLE ADMIN_OPTION DEFA ...

  10. [翻译] GiFHUD

    GiFHUD progress hud for displaying only animated gif images. no labels (for now) 状态指示器,仅仅用来显示gif图片,不 ...