枚举和反射

枚举

枚举

枚举是一种特殊的类,它可以有自己的属性、方法和构造方法。

两种枚举的方法

自定义枚举

a.将构造器私有化,防止外部直接new

b.去掉set方法,防止属性被修改

c.在内部直接创建固定的对象

通过类名直接去访问

关键字枚举

用enum改变class,然后在内部不一一写出来像上面这样子的,而是直接常量名加实参列表的方式,来进行枚举

中间使用逗号隔开就ok啦

反射

将类的各个组成部分封装为其他对象

反射的实际操作,可以方便我们对对象进行操作

Class对象

就是编译器先编译,比如一个类,把这个类的成员封装成一个对象,这个类的方法封装成一个对象,这个类的构造器封装成一个对象等等

可以通过该三种方法获得class对象

Class.forname("全类名")

类目。Class

对象。Getclass()

需要一个class来接收对象

同一个字节码文件,只会被加载一次不论通过什么方法加载的都一样

junit

测试

给方法加测试类(再同一级的另一个包搞一个测试的包)

定义测试方法

方法名:test测试方法名

返回值:void

参数列表:空参

白盒测试

在前面加上@test测试就是一个测试类,可以直接运行

断言就是看是不是和我们预想的结果是一样的

在进行io流的时候需要进行下面这两个操作,初始化资源和释放资源

初始化资源

在方法前面加上@before

会在运行测试方法之前运行这个

释放资源

在方法前面加上@after

会在运行测试方法之后运行这个

相关推荐
xuhaoyu_cpp_java5 分钟前
项目学习(三)代码生成器
java·经验分享·笔记·学习
乐观勇敢坚强的老彭5 分钟前
C++信息学奥赛lesson1
java·开发语言·c++
San813_LDD9 分钟前
[深度学习] 数据序列化格式对比:以日志级别配置为例
xml·java·前端
jllllyuz12 分钟前
MATLAB实现滚动轴承故障诊断(外圈故障)
开发语言·人工智能·matlab
github_czy14 分钟前
更加优雅的类型检查与传参---mcp源码分析
java·服务器·开发语言
专注_每天进步一点点19 分钟前
IDEA中,Apifox Helper 的 2.0.15-243版本的插件 导出指定的接口,入参的中文名为空,描述为空
java·ide·intellij-idea
Irissgwe20 分钟前
C++ STL关联式容器详解:set、multiset、map、multimap
开发语言·c++·stl·set·map·multiset·关联式容器
兰令水20 分钟前
leecodecode【区间DP+树形DP】【2026.6.10打卡-java版本】
java·算法·leetcode
叶帆29 分钟前
【YFIOs】用C#开发硬件之WiFi网络
开发语言·网络·c#
meilindehuzi_a32 分钟前
深入理解 JavaScript 的同步与异步机制:从单线程设计到 Promise 核心应用
开发语言·javascript·ecmascript