Java基础之注解Annotation

注解Annotation

理解:不是程序本身,可对程序做出解释,但与注释不同点在于注解可被其它程序,如编译器读取。
格式:注解是以“@注释名”在代码中存在,而且还可以添加一些参数值。

内置注解:

1 @Override:只能放在方法前面
2@Deprecated;不推荐使用的方法,属性。但是仍可以使用。
3 @SuppressWarning:用来抑制编译时的警告信息,与前两个不同点在于它需要添加一个参数才能正确使用。定义好的参数有:deprecation,unchecked,fallthrough,path,serial,finaily,all。
它可以放在属性,方法,类,接口之前。

自定义注解

元注解:负责注解其它注解的注解。
元注解有四类
自定义注解的注解元素必须有值
1@Target:描述注解的使用范围
2@Retention:表示在什么级别保存该注释信息,用于描述注解的生命周期。
RetentiionPolicy有SOURCE,CLASS,RUNTIME.
3@Documented 描述在使用 javadoc 工具为类生成帮助文档时是否要保留其注解信息。
4@Inherited 使被它修饰的注解具有继承性(如果某个类使用了被@Inherited修饰的注解,则其子类将自动具有该注解)。

ORM

对象关系映射:object relationship mapping
类与表对应;属性和字段对应;对象与记录对应。

脚本引擎

// 获得脚本引擎对象
ScriptEngineManager sem=new ScriptEngineManager();//引擎管理器
ScriptEngine engine=sem.getEngineByName(“javascript”);//脚本语言的名字
Aspect Oriented Programming面向切面编程

字节码操作

字节码操作类库:
BCEL
ASM
CGLIB
JAVAssist库

使用javassist类库的源代码:
ClassPool pool=ClassPool.getDefault();
CtClass cc=pool.get(“con.JAVAssist.test.Emp”); //获得已有类
关注$0等符号的使用。
Frozen classes 不可以修改的类

猜你喜欢

转载自blog.csdn.net/qq_35383654/article/details/86426504