黑马java-JavaSE进阶-java高级技术

1.单元测试

就是针对最小的功能单元方法,编写测试代码对其进行正确性测试

2.Junit单元测试框架

可以用来对方法进行测试,它是第三方公司开源出来的

优点:

可以灵活的编写测试代码,可以针对某个方法执行测试,也支持一键完成对全部方法的自动化测试,且各自独立

不需要程序员去分析测试的结果,会自动生产测试报告出来

测试方法必须是public void声明,必须用@Test测试

3.断言机制:

程序员可以通过预测业务方法的结果

一键自动化单元测试

Junit4单元测试框架的常用注解

在测试方法执行的方法,常用于:初始化资源

在测试方法执行后在执行的方法,常用于:释放资源

4.反射

反射就是,加载类,并允许以编程的方式解剖类中的各种成分(成员变量、方法、构造器等)。

反射第一步:加载类,获取类的字节码:CLass对象

反射的作用:适合做java的框架,基本上,主流的框架都会基于反射设计出一些通用的功能

5.反射获取class对象的三种方式:

Class c1=类名.class

调用Class提供方法:public static Class forName(String package)

Object提供的方法:public Class getClass(); Class c3=对象.getClass()

获取类构造器的作用:初始化一个对象返回

6.反射获取类的成员变量

7.获取类的成员方法

作用:依然是执行

8.注解:

就是java代码里的特殊标记,比如:@Override,@Test等

作用是:让其他程序根据注解信息来决定怎么执行该程序

注意:注解可以用在类上、构造器上、方法上、成员变量上、参数上、等位置

9.自定义注解:

就是自己定义注解

特殊属性名:value

如果注解中只有一个value属性,使用注解时,value名称可以不写

注解的本质是一个接口,java中所有注解都是继承了Annotation接口

@注解(....):其实就是一个实现类对象,实现类该注解以及Annotation接口

10.元注解

修饰注解的注释

11.注解的解析

就是判断类上、方法上、成员变量上是否存在注解,并把注解里的内容解析出来

如何解析注解:

指导思想:要解析谁上面的注解,就应该先拿到谁

比如要解析类上面的注解,则应该先获取类的class对象,再通过class对象解析其上面的注解

比如要解析成员方法上的注解,则应该获取到该成员方法的Method对象,再通过Method对象解析其上面的注解

Class、Method、Field、Constructor,都实现了AnnotatedElement接口,它们都有解析注解的能力

12.动态代理

对象的事情太多可以通过代理转移部分职责

对象有什么方法下被代理,代理就一定要有对应的方法

java.lang.reflect.Proxy类:提供了为对象产生代理的方法

相关推荐
Tian_Hang3 分钟前
Eclipse Ditto 的权限策略
java·服务器·前端·网络·ide·ubuntu·eclipse
叩码以求索9 分钟前
经典算法实例分析:写字符串需要的行数
开发语言·javascript·ecmascript
我是唐青枫21 分钟前
Kotlin 运算符重载详解:为什么 a += b 有时改对象,有时换对象?
开发语言·kotlin
小蓝波22 分钟前
docker 的命令
java·docker·容器
2zcode25 分钟前
基于MATLAB图像处理的饮料瓶识别与价格显示系统设计与实现
开发语言·图像处理·matlab
AI人工智能+电脑小能手32 分钟前
【大白话说Java面试题 第155题】【06_Spring篇】第15题:Spring 如何解决循环依赖问题?
java·spring·循环依赖·三级缓存·aop代理
骑士雄师1 小时前
大模型:临时会话
开发语言·python
唐青枫1 小时前
Java Maven 实战指南:从 POM、依赖管理到多模块构建
java
硕风和炜1 小时前
【LeetCode: 1301. 最大得分的路径数目 + DP】
java·算法·leetcode·动态规划·dp·记忆化搜索
SamDeepThinking1 小时前
面向对象真正管理的,不是对象,而是依赖
java·后端·程序员