利用JAVA反射机制实现调用私有方法
1.fragment是AccessibilityFragment的對象。须要被調用的方法的類。
setAccessible(true)并非将方法的訪问权限改成了public。而是取消java的权限控制检查。所以即使是public方法。其accessible属相默认也是false
try {
Class mClass = Class.forName("com.sonymobile.chameleon.workflow.step.AccessibilityFragment");
Method method = mClass.getDeclaredMethod("isAccessibilityEnabled");
method.setAccessible(true);
if(!Boolean.parseBoolean((method.invoke((Object)fragment,null)+""))) {
method = mClass.getDeclaredMethod("enableAccessibility");
method.setAccessible(true);//私有方法
method.invoke((Object)fragment,null);//調用方法,null:爲傳遞的参數
//method.invoke((Object)getService(),new Object[]{getContext()});帶参方法
}
} catch (ClassNotFoundException e) {
Log.d(TAG, "1");
e.printStackTrace();
} catch (NoSuchMethodException e) {
Log.d(TAG, "2");
e.printStackTrace();
} catch (IllegalAccessException e) {
Log.d(TAG, "3");
e.printStackTrace();
} catch (IllegalArgumentException e) {
Log.d(TAG, "4");
e.printStackTrace();
} catch (InvocationTargetException e) {
Log.d(TAG, "5");
e.printStackTrace();
}
利用JAVA反射机制实现调用私有方法的更多相关文章
- 利用java反射机制 读取配置文件 实现动态类载入以及动态类型转换
作者:54dabang 在spring的学习过程之中,我们能够看出通过配置文件来动态管理bean对象的优点(松耦合 能够让零散部分组成一个总体,而这些总体并不在意之间彼此的细节,从而达到了真正的物理上 ...
- 利用JAVA反射机制设计通用的DAO
利用JAVA反射机制设计一个通用的DAO 反射机制 反射机制指的是程序在运行时能够获取自身的信息.在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息. 反射机制创建类对象 ...
- 利用Java反射机制对实体类的常用操作工具类ObjectUtil
代码: ObjectUtil类: import java.lang.reflect.Field; import java.math.BigDecimal; import java.text.Simpl ...
- 利用Java反射机制将Bean转成Map
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
- java反射机制(访问私有字段和私有方法)
来自:http://tutorials.jenkov.com/java-reflection/private-fields-and-methods.html 尽管我们通常认为通过JAVA的反射机制来访 ...
- 利用java反射机制实现读取excel表格中的数据
如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...
- 不使用BeanUtils,利用Java反射机制:表单数据自动封装到JavaBean
在百度搜“java反射 将表单数据自动封装到javabean ”,第一页显示的都是一样的代码,都是利用导入第三方jar包<commons-beanutils>和<commons-lo ...
- 利用JAVA反射机制将JSON数据转换成JAVA对象
net.sf.json.JSONObject为我们提供了toBean方法用来转换为JAVA对象, 功能更为强大, 这里借鉴采用JDK的反射机制, 作为简单的辅助工具使用, 有些数据类型需要进行转 ...
- 利用java反射机制编写solr通用的java客户端
一.前言 通过上一篇的讲解,我们知道了dynamicFiled字段,它是动态的,不需要显示的声明.而且一些常用的基本类型solr已经默认给我们创建好了. 例如:*_i,*_is,等. 如果我们要使用动 ...
随机推荐
- CF732F Tourist Reform(边双联通)
题意 在一张有向图中,设 ri 为从点 i 出发能够到达的点的数量. 定义有向图的“改良值”为 ri 的最小值. 现给出一张无向图,要求给每条边定一个方向,使产生的有向图“改良值”最大. 输出 最大改 ...
- Python爬虫基础示例
使用pip安装相关依赖: pip install requests pip install bs4 安装成功提示:Successfully installed *... 爬取中国天气网数据示例代码: ...
- caioj 1079 动态规划入门(非常规DP3:钓鱼)(动规中的坑)
这道题写了我好久, 交上去90分,就是死活AC不了 后来发现我写的程序有根本性的错误,90分只是数据弱 #include<cstdio> #include<algorithm> ...
- 仿分词统计的MapReduce 程序。
HDFS 数据格式 : 举例单条数据:02-26 08:01:56 [qtp512249001-42] INFO async-statistics - class com.spring.aop.S ...
- 用typename和template消除歧义
- C++对象模型——效率有了,弹性呢(第七章)
7.4 效率有了,弹性呢 传统的C++对象模型提供有效率的运行期支持.这份效率,再加上与C之间的兼容性,造成了C++的广泛被接受度.然而,在某些领域方面,像是动态共享函数库(dynamicall ...
- HDU4565 So Easy! 矩阵高速幂外加数学
easy 个屁啊,一点都不easy,题目就是要求公式的值,但是要求公式在最后的取模前的值向上取整.再取模,无脑的先试了高速幂 double fmod来做,结果发现是有问题的.这题要做肯定得凑整数,凑 ...
- NuGet配置代理
https://stackoverflow.com/questions/9232160/nuget-behind-proxy nuget.exe config -set http_proxy=http ...
- 同一台服务器部署多个WEB应用,SESSION冲突的解决方法
由于一台服务器上使用Tomcat部署多个WEB项目,而项目因为用到框架都是一样的,导致同时运行,session相互冲突,这个登录后,那个就得重新登录,造成了使用不方便,解决办法如下: 在server. ...
- @Transactional 事务注解
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.SERIALIZABLE, rollbackFor = ...