二、参考博客

三、关键字分类

包相关

import

packege

assert

基本类型

byte

short

int

long

boolean

char

float

double

变量引用

super

this

void

继承相关

extends

implements

类、方法、属性

enum

class

abstract

interface

final

static

strictfp

native

new

synchronized

transient

volatile

访问控制

public

private 

protected

default(缺省)

异常控制

try

catch

throw

throws



程序控制

 

if

else

switch

case

while

do

for

back

continue

default

return

instanceof

保留字

goto

const

1.抽象性关键字:enum  / class / abstract / interface  (4个)

2.访问权限关键字:public / protected /  默认 (空白不写)  != default   / private  (4个)

3.本身、数据类型关键字:this  / super / short / byte / int / long / boolean / char / float / double / void  (11个) 

4.结构关键字:if  / if-else / if-else if- else/ for / while / do-while / switch - case /  break / continue  (9个)

5.数据结构的顺序关键:默认是从上往下,从左往右依次执行

6.异常处理关键字:try - catch - finally /  throw / throws (4个)

7.具有关系性关键字: extends / implements / import  (3个)

8.静态化、可变性关键字: static / final (2个)

9.同步方式关键字:synchronization  /  volatile  (2个)

10.其他关键字:transient / strictfp / packege /  new / native / goto / const / assert / default / instanceof / return (11个)

三、常用关键字的基础知识

1.抽象性:enum/class/abstract/interface (4个均为常用的关键字,包含@interface 声明注解类型)

(1) enum/class基础知识及核心用法

enum是枚举类型,列举的含义。根据该概念的集合是否有穷,划分为enum/class。

如果可以根据知识体系,划分至底层,则用enum描述,否则,用class进行声明数据类型。

class是类类型,一类事物的含义。

// 简单的声明一个枚举类型

public enum SimpleEnum{

    PEOPLE(0,"人"),
    BOOK(1,"书"),
    MONERY(2,"钱);

    private Integer key;

    private String value;

    public SimpleEnum(Integer key,String value){

    this.key = key;

    this.value = value;

    }

    //get/set方法自行创建,已省略...

}
// 定义系统权限枚举类型

public enum SystemRoleEnum{

    //从外部定义系统权限(可访问权限和不可访问权限)

    ACCESS(0,"可访问权限"),
    NOT_ACCESS(1,"不可访问权限"),
    
    //从内部定义系统权限

    // 1.登陆用户可访问的菜单权限;

    NAVICATE(2,"菜单访问权限"),
    BUTTON(3,"按钮访问权限"),
    ADD_BUTTON(4,"添加按钮访问权限"),
    REMOVE_BUTTON(5,"移除按钮访问权限"),


    // 2.资源访问权限;

    GLOBAL_RESOURCE(6,"全局资源访问权限"),
    PART_RESOURCE(7,"局部资源访问权限"),
    STATIC_RESOURCE(8,"静态资源访问权限"),

    // 3.文件读/取权限;

    FILE_READ_ROLE(9,"文件读取权限"),
    FILE_WRITE_ROLE(10,"文件写入权限"),

    // 4.文件下载权限等次列举

    FILE_DOWNLOAD_ROLE(11,"文件下载权限");

    private Integer key;

    private String value;

    public SystemRoleEnum(Integer key,String value){

    this.key = key;
    this.value = value;

    }

    // 自行添加Setter/Getter函数

}

核心目的:为了存储通用的概念集合,均统一定义在枚举中。

(题外话: 好的业务系统架构,通常在数据库表结构中进行定义且至多一张表来定义)

为什么被设计? 在早期的的数据库设计,Web应用不太流行时,Enum被广泛的运用在C/S模式应用中,为C/S模式的应用程序/服务器提供了很好的支撑。

要点分析:1.早期条件:数据库表设计不够优秀,在不同的实现中,对多个概念集合映射进行大量的文档描述。

要点问题:1.对于应用系统开发过程中,人员替换容错率高;2.为了系统可以适应不同的场景,需要修改大量的代码,造成后期维护过重的问题。

解决方案:引入枚举类型的概念,基于这样的概念,降低了系统开发容错率及修改较少的代码,提高兼容性。

3)访问控制

1) private 私有的

private 关键字是访问控制修饰符,可以应用于类、方法或字段(在类中声明的变量)。 只能在声明 private(内部)类、方法或字段的类中引用这些类、方法或字段。在类的外部或者对于子类而言,它们是不可见的。

2) protected 受保护的

protected 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。可以在声明 protected 类、方法或字段的类、同一个包中的其他任何类以及任何子类(无论子类是在哪个包中声明的)中引用这些类、方法或字段。

3) public 公共的

public 关键字是可以应用于类、方法或字段(在类中声明的变量)的访问控制修饰符。 可能只会在其他任何类或包中引用 public 类、方法或字段。

创作日期:2019年3月2日

更新日期:2019年3月24日