JAVA创建一个私有域_使用java基础反射访问私有域、方法和构造函数
1、类
public class ConfigData {
private Map configs = null;
private final String fileName = "config.xml";
private static ConfigData instance;
private ConfigData() {
}
public static ConfigData getInstance() {
if (instance == null) {
instance = new ConfigData();
}
return instance;
}
private void init() {
configs = XmlResouceUtils.getAllElements(fileName);
}
public void addTags(String... tagNames) {
if(tagNames==null||tagNames.length==0){
return;
}
String value = XmlResouceUtils.getXmlValue(fileName, tagNames);
StringBuffer strBuf = new StringBuffer();
for (String str : tagNames) {
strBuf.append(str + "_");
}
strBuf.deleteCharAt(strBuf.length() - 1);
configs.put(strBuf.toString(), value);
}
public String getValueByTag(String tagName) {
String string = configs.get(tagName);
return string;
}
public Map getAll() {
return this.configs;
}
}
2、访问方式
@Test
public void testCofingData() throws Exception {
Class> clazz = Class.forName("com.hoolai.basketball.resources.ConfigData");
Method method = clazz.getDeclaredMethod("init");
method.setAccessible(true);
Field declaredField = clazz.getDeclaredField("configs");
declaredField.setAccessible(true);
Constructor> constructor = clazz.getDeclaredConstructor();
constructor.setAccessible(true);
Object instance = constructor.newInstance();
method.invoke(instance);
Map map = (Map) declaredField.get(instance);
printMap(map);//打印map
}
JAVA创建一个私有域_使用java基础反射访问私有域、方法和构造函数相关推荐
- java写一个文件浏览器_【Java】 实现一个简单文件浏览器(2)
标签: 接着上篇文章 接下来说下程序右侧的文件内容表格如何实现 FileTable类: FileTable基础于JTable类,构造函数里用setDefaultRenderer设置每行默认的渲染器为F ...
- java设计一个user类_关于JAVA设计一个用户类
关于JAVA设计一个用户类 关注:152 答案:2 mip版 解决时间 2021-02-02 05:51 提问者安分守己的小青春 2021-02-02 02:23 设计一个用户类,该类有用户编号. ...
- 用java编写一个聊天程序_基于JAVA实现的一个简单的网络聊天程序
一.Java Socket的概述 1.Socket套接字方便了开发网络应用程序.TCP面向连接的可靠传输协议.具有数据确认和数据重传机制.保证了发送数据一定能到达通信的对方.UPD协议无连接,不可靠的 ...
- java创建数组并赋值_「java 数组」Java创建数组的方法 - seo实验室
java 数组 最近学java,一点小心得,希望和大家分享一下,第一次写文章,写的不好希望大家谅解,当然我也会尽力写好这篇文章! Java创建数组的方法大致有三种 说明:这里以int为数据类型以arr ...
- java设计一个查询模块_采用Java实现的汉语拼音查询模块
0引言现有管理信息系统的数据库中存储了大量的中文信息,中文信息的检索是MIS的重要功能,对于中文字段的常见查询方法是输入汉字字符串,但是此方法需要过多的击键次数,例如,查询人名为"王晓明&q ...
- java实现一个电梯模拟器_基于Java的捎带电梯系统
一.思路 写一个简单的电梯系统,首先根据老师提供的需求,写一下基础思路: 电梯有最高层和最低层,输入数字选择正确楼层数 输入数字大于当前楼层,则为上行:小于当前楼层,则为下行 每次输入数字的时候,需要 ...
- linux桌面上创建文件夹,如何在桌面上创建一个文件夹_在桌面上建立文件夹的方法...
有些朋友会习惯把文件资料放到桌面,时间久了之后,文件越来越多,这时就需要把它们整理进文件夹了.那么如何在桌面上创建一个文件夹呢?今天小编就为大家带来在桌面上建立文件夹的方法. 在桌面上建立文件夹的方法 ...
- java创建一副牌_用java怎么创建一副扑克牌
一张扑克牌有两个属性,一个是花色(suit),一个是点数(rank),下面写一个简单的类 Card package com.syz.card; import java.io.Serializable; ...
- JAVA设计一个电视机类_漫谈Java程序设计中的接口应用
Java语言提供了一种接口(interface)机制.这种接口机制使Java的面向对象编程变得更加灵活.我们可以用接口来定义一个类的表现形式,但接口不能包含任何实现.在<Thinking in ...
最新文章
- 任意排列、组合终极Shell脚本
- 损坏防浪涌电插排内部电路
- opencv实现人脸检测、性别和年龄预测
- java 发送qq消息_php发送qq消息
- 了解使用JavaScript进行面向对象编程的基础(并增强您的编码…
- 结果显示窗口如何缩小_Proe草绘时提示“截面再生失败。不合适的尺寸”如何处理?...
- Linux内存,先看这篇文章
- 基础知识很扎实 - 但是面试就是做不出来, 怎么办? (长, 慎入)
- Linux Dynamic Shared Library LD Linker
- 重磅!苹果正式开源iOS内核源码!
- mysql+enable+sql+log_MySQL -- redolog + binlog
- nodeJS笔记参考菜鸟教程
- 别再说互联网寒冬了,为何不从自己身上找找原因呢
- EXCEL一个单元格内容分成多个单元格
- #ifndef #defin #endif的用法
- office java_PageOffice for Java v4.0 免费试用版
- 【IDE】【IDEA】批量将GBK编码的工程,转换为UTF8编码的工程
- 代数几何:Zariski Closures、不可约簇-素理想
- 计算机等级考试一级有用吗?
- 进程的敏感信号表_敏感信号表(有改动)
热门文章
- wp_nav_menu($args)函数说明
- E: Some index files failed to download. They have been ignored, or old ones used instead.解决方案
- Centos7下python3安装ipython
- 【转载】可能是把Docker的概念讲的最清楚的一篇文章
- 如何用Pygame写游戏(十六)
- Java—这把线程池ThreadPoolExecutor操作,你学会了吗?
- 使用for循环嵌套实现乘法口诀表
- 类与对象的小结 java 1614782140
- 对象交互 空调与摇控器 0107
- 1910101811