Java枚举、注解每日一考

2022.02.19每日一考

1. 什么是枚举类?枚举类的对象声明的修饰符都有哪些?

枚举类的对象的个数是确定的,

public static final

 

2. 什么是元注解?说说Retention和Target元注解的作用

元注解:对现有的注解进行解释说明的注解。

Retention:指明所修饰的注解的生命周期

Target:指定annotation能修饰的类结构

 

生命周期有三种状态:

SOURCE:编译时执行,不会保留在字节码文件中

CLASS:会保留在字节码文件中

RUNTIME:会保留在字节码文件中并在运行时加载到内存中,反射

 

3.说说你所理解的集合框架都有哪些接口,存储数据的特点是什么

collection:单列数据,用来存储一个一个对象

  Set:无需不可重复

  List:有序可重复

Map:双列集合,key-value

 

4.throw和throws的区别?

throw:定义在方法内,抛(生成)出一个异常对象

throws:是处理异常的一种方式,上游排污,下游治污,抛给处理异常的方法

 

throw:生成一个异常对象,并抛出。使用在方法内部 <-> 自动抛出异常对象

throws:处理异常的方式。使用在方法声明处的末尾<->try-catch-finally

 

5.谈谈你对同步代码块中同步监视器和共享数据的理解及各自要求。

同步监视器:锁,任何一个对象都可以充当,多个线程共用一把锁

共享数据:多个线程共同操作的数据

多线程对共享数据处理时需要考虑线程安全问题,通过同步代码块刚好surround共享数据的操作部分,并使多个线程共用一把锁。

 

同步监视器:俗称锁。①任何一个类的对象都可以充当锁。② 多个线程共用同一把锁。

共享数据:多个线程共同操作的数据,即为共享数据。

需要使用同步机制将操作共享数据的代码包起来。不能包多了,也不能包少了

posted @ 2022-02-19 22:09  Fancy[love]  阅读(42)  评论(0编辑  收藏  举报