枚举,注解,实体类,单元测试,反射对象字段------------举例使用
来源:互联网 发布:软件自动化测试 编辑:程序博客网 时间:2024/06/05 19:37
* 定义一个枚举,枚举多用来存放常量,是一种数据类型
* @author Administrator
*
*/
public enum Myenum {
RED,BLUE,YELLOW
}
===========================================================================================================
/**
* 自定义一个注解,一个采用枚举类型赋值,另一个声明为String,默认值为“”
* @author Administrator
*
*/
@Documented
@Target(value={ElementType.FIELD})//表明该注解针对的类型是字段
@Retention(RetentionPolicy.RUNTIME)//表明该注解实在运行时有效
@Inherited
public @interface Myannotation {
public String value() default "";
public Myenum myenum() default Myenum.BLUE;//给注释类型中的变量myenum赋默认值为枚举数据类型的Myenum.BLUE
}
===========================================================================================================
/**
* 建立实体类,含两个属性,一个用枚举数据类型
* 给注释类型中的变量myenum赋值为枚举数据类型的Myenum.YELLOW
* 给注释类型中的变量value赋值为xx
* @author Administrator
*
*/
public class People {
//@Myenum("xx")
@Myannotation(myenum=Myenum.YELLOW,value="xx")
private String colorName;
public String getColorName() {
return colorName;
}
public void setColorName(String colorName) {
this.colorName = colorName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int age;
}
===========================================================================================================
/**
* 建立单元测试类
* @author Administrator
*
*/
public class PeopleTest {
@Test
public void test1(){
System.out.println("111111111");//检测单元测试方法是否成功
}
@Test
public void testpeople(){
Class p=People.class;//利用反射生成对象 Class p1=Class.forName("com.yunhe.entity.People");
try {
Field[] fs=p.getDeclaredFields();//利用反射生成对象p的属性字段的集合
for(Field f:fs){
System.out.println("字段类型: "+f.getType());//用于检查反射生成的对象的字段的类型
System.out.println("字段名称: "+f.getName());//用于检查反射生成的对象的字段的名字
if(f.isAnnotationPresent(Myannotation.class)){//判断字段是否采用指定类型的注解,利用反射产生注解对象
Myannotation at = f.getAnnotation(Myannotation.class);//返回对象f所包含的指定的注解对象,否则null
System.out.println("注解的字段值: "+at.myenum()+"----"+at.value());//输出特定注解的相关字段的值
}
}
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
====================================运行结果=======================================================================
字段类型: class java.lang.String
字段名称: colorName
注解的字段值: YELLOW----xx
字段类型: int
字段名称: age
- 枚举,注解,实体类,单元测试,反射对象字段------------举例使用
- 安卓注解使用,实体类指定须使用字段, Google Gson 字段过滤
- 反射+枚举+freemarker,自动生成实体类,自动建表建索引(二)之建表建索引,注解和DatabaseMetaData 获取信息
- 反射注解的程序举例
- java中使用反射获取pojo(实体)类的所有字段值
- java中使用反射获取pojo(实体)类的所有字段值
- Java使用反射、自定义注解注入对象
- 使用反射举例
- c# 反射 遍历实体的所有字段,ObjectDumper类实现
- Spring 注解实体类中非数据库字段属性
- hibernate实体类注解时间类型字段笔记
- Spring 注解实体类中非数据库字段属性
- 使用反射将HttpServletRequest对象中的数据映射到实体类中
- Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)
- 不使用反射的实体类
- 使用JPA注解配置ORM实体类
- Hibernate使用注解方式加载实体类
- 反射+枚举+freemarker,自动生成实体类,自动建表建索引(一)之生成实体类,枚举详解
- HDU 1698Just a Hook 线段树区间更新
- LInux如何查看发行版本与查看内核版本
- hadoop 集群调优
- Android系统广播大全
- 知识库
- 枚举,注解,实体类,单元测试,反射对象字段------------举例使用
- C#学习笔记之线程调用带参数的方法
- 网络编程的并发问题
- AS jni调用入门(附图)
- 【Linux】Linux中常用操作命令
- 49.leetcode题目18. 4Sum
- 【iOS开发】棘手BUG
- 项目2——动物这样叫3
- vs2008学习2.使用自定义工具栏