java标识符、修饰符和关键字

时间:2021-08-07 16:36:58

一、标识符

1.概念:标识符好比人和物的姓名,java中标识符就是类、对象、方法、变量、接口和自定义数据类型等等的名字。

2.规则:

(1)首位不能是数字。

(2)标识符对大小写敏感。

(3)不可以是java中的关键字和保留字。

(4)标识符字间不能有空格。

(5)可由数字,字母和下划线(_),美元符号($)或人民币符号(¥)组成,中文也行,很国际化。

(6)没有长度限制。

(7)不能是true、false和null。

3.命名约定:

(1)类和接口名:每个字的首字母大写,含有大小写。例如,MyDog、YourDog、Student等。

(2)方法名或变量名:第一个单词首字母小写,从第二个单词开始首字母大写。(小驼峰法)例如,一个单词:首字母小写。如:name、age。多个单词:第二个单词首字母大写。如:stuName、showTime。

(3)常量名:基本数据类型的常量名使用全部大写字母,单词间用下划线分隔。对象常量可大小混写。例如,MY_DOG、YOUR_DOG等等。

  (4)包名:全部小写,用”.”隔开,每一个点表示一级目录,至少要有一级目录。例如,单级包:小写。如:com。多级包:小写,用”.”隔开。如:com.baidu.www。

二、修饰符

java修饰符分两类:访问修饰符和非访问修饰符。

修饰符用来定义类、方法或者变量,通常放在语句的最前端。

1.访问修饰符

种类:

  • default(缺省,默认,即什么都不写):在同一包内可见,不使用任何修饰符。       使用对象:类、接口、变量、方法。
  • public(公有):对所有类可见。                                                                                     使用对象:类、接口、变量、方法。
  • protected(保护):对同一包内的类和所有子类可见。                                                   使用对象:变量、方法。 注意:不能修饰类(外部类)
  • private(私有):在同一类内可见。                                                                                使用对象:变量、方法。 注意:不能修饰类(外部类)。

访问权限说明:

修饰符 当前类 同一包内的类 子孙类(同一包) 子孙类(不同包) 其他包
public Y Y Y Y Y
protected Y Y Y Y/N N
default Y Y Y N N
private Y N N N N

规则说明:

(1)default(默认访问修饰符~即不用关键字)

使用default声明的变量和方法,对同一包内的类是可见的。接口里的变量都隐式声明为public static final,而接口里的方法默认情况下访问权限为public。

(2)public(公有访问修饰符)

  被声明为 public 的类、方法、构造方法和接口能够被任何其他类访问。

  如果几个相互访问的 public 类分布在不同的包中,则需要导入相应 public 类所在的包。由于类的继承性,类所有的公有方法和变量都能被其子类继承。

  (3)protected(被保护的访问修饰符)

  子类与基类在同一包中:被声明为 protected 的变量、方法和构造器能被同一个包中的任何其他类访问。

  子类与基类不在同一包中:那么在子类中,子类实例可以访问其从基类继承而来的 protected 方法,而不能访问基类实例的protected方法。

  子类能访问 protected 修饰符声明的方法和变量,这样就能保护不相关的类使用这些方法和变量。

  (4)private(私有访问修饰符)

  私有访问修饰符是最严格的访问级别,所以被声明为 private 的方法、变量和构造方法只能被所属类访问,并且类和接口不能声明为 private

  声明为私有访问类型的变量只能通过类中公共的 getter 方法被外部类访问。

  Private 访问修饰符的使用主要用来隐藏类的实现细节和保护类的数据。

  访问控制和继承:

  • 父类中声明为 public 的方法在子类中也必须为 public。

  • 父类中声明为 protected 的方法在子类中要么声明为 protected,要么声明为 public,不能声明为 private。

  • 父类中声明为 private 的方法,不能够被继承。

2.非访问修饰符(简单介绍)

  static 修饰符,用来修饰类方法和类变量。

  final 修饰符,用来修饰类、方法和变量,final 修饰的类不能够被继承,修饰的方法不能被继承类重新定义,修饰的变量为常量,是不可修改的。

  abstract 修饰符,用来创建抽象类和抽象方法。

  synchronized 和 volatile 修饰符,主要用于线程的编程。

三、关键字

  

关键字 含义
abstract 表明类或者成员方法具有抽象属性
assert 断言,用来进行程序调试
boolean 基本数据类型之一,声明布尔类型的关键字
break 提前跳出一个块
byte 基本数据类型之一,字节类型
case 用在switch语句之中,表示其中的一个分支
catch 用在异常处理中,用来捕捉异常
char 基本数据类型之一,字符类型
class 声明一个类
const 保留关键字,没有具体含义
continue 回到一个块的开始处
default 默认,例如,用在switch语句中,表明一个默认的分支
do 用在do-while循环结构中
double 基本数据类型之一,双精度浮点数类型
else 用在条件语句中,表明当条件不成立时的分支
enum 枚举
extends 表明一个类型是另一个类型的子类型,这里常见的类型有类和接口
final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量
finally 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块
float 基本数据类型之一,单精度浮点数类型
for 一种循环结构的引导词
goto 保留关键字,没有具体含义
if 条件语句的引导词
implements 表明一个类实现了给定的接口
import 表明要访问指定的类或包
instanceof 用来测试一个对象是否是指定类型的实例对象
int 基本数据类型之一,整数类型
interface 接口
long 基本数据类型之一,长整数类型
native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
new 用来创建新实例对象
package
private 一种访问控制方式:私用模式
protected 一种访问控制方式:保护模式
public 一种访问控制方式:共用模式
return 从成员方法中返回数据
short 基本数据类型之一,短整数类型
static 表明具有静态属性
strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 [1] 
super 表明当前对象的父类型的引用或者父类型的构造方法
switch 分支语句结构的引导词
synchronized 表明一段代码需要同步执行
this 指向当前实例对象的引用
throw 抛出一个异常
throws 声明在当前定义的成员方法中所有需要抛出的异常
transient 声明不用序列化的成员域
try 尝试一个可能抛出异常的程序块
void 声明当前成员方法没有返回值
volatile 表明两个或者多个变量必须同步地发生变化
while 用在循环结构中

取材于:菜鸟教程、百度百科。