我一直在尝试在Java语言中使用Reflection,但结果并不是很好。下面是我的代码:
public class ReflectionTest {
public static void main(String[] args) {
ReflectionTest test = new ReflectionTest();
try {
Method m = test.getClass().getDeclaredMethod("Test");
m.invoke(test.getClass(),
我现在正在执行一个java程序,如下所示:
package com.test;
public class Test {
public static void main(String[] args){
execute();
}
public static String execute(){
try {
Thread.sleep(20000);
} catch (InterruptedException e) {
// TODO Auto-generated catch
我想使用Java反射调用一个方法。
问题是这个方法(我写的)抛出了一个异常(我创建了一个myCustomException)。当我添加try/catch子句时,我无法运行我的项目,因为Eclipse说“catch子句是不可访问的”。
下面是我试图在类myMethod中调用MyClass的时候:
270. myMethod.invoke(null, myParam); // NB : null because myMethod is static
当myMethod不抛出一个MyCustomException时,每件事都是可以的。但是当它抛出一个MyCustomException时,我会得
我想知道在java (纯代码,而不是一些Eclipse的东西)中是否有一种方法可以让重复的try catch代码“语法糖”起来。也就是说,我必须包装一堆函数
public void foo(){
try{
// bla
} catch (Exception e) {
System.out.println("caught exception:");
e.printStackTrace();
}
}
public void bar(){
try{
// other bla
} ca
我有一些static final String字段,我想使用反射来获取它们的值,所以我做了一个类似这样的方法:
public String getLogoSrc(final String provider) {
if (provider.equals(StringUtils.EMPTY)) {
return StringUtils.EMPTY;
}
logger.info("---provider is: "+provider);
for (Field f : ConstantsBean.class.getDeclaredFi
由于某些原因,如果方法是通过invoke()调用的,那么它抛出的默认异常不会导致崩溃。但是,它确实退出了该方法。invoke是否会运行另一个线程(因为异常只会使线程崩溃,对吗?),如果是这样,那么是否有一种方法可以将异常发送出去?
下面是一个简单的例子:
import java.lang.reflect.InvocationTargetException;
public class Main {
public static void main(String[] args) {
try {
Class.forName("Main"
有一个Java类,我正在尝试为它编写一个JUnit测试。
使用JaCoCo监控代码覆盖率。因此,还需要从测试类中调用私有方法。
使用Java反射从测试类调用main方法和私有方法。
我的问题是更好地扩展测试类中的主类(示例),还是使用java反射来访问私有方法?目前我使用的反射如下所示。
在测试类中扩展Java类是一种好的做法吗?
我对编写测试类还是个新手,所以这个问题。我将非常感谢你在这方面的帮助。
public class Example {
public static void main(String[] s) {
method1();
meth
我正试图用Jsoup解析一些url,但是我得到了以下错误:
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
我试图在java中抛出我的自定义异常,但目前我没有运气。我有两个类,一个是readWrite类,它允许用户输入文件名,另一个是文本(通过构造函数)。它有三种方法:写、读和一个writeToFile,如果文件以.txt结尾,它现在应该会抛出我的自定义异常类,说明“对不起,但这个系统只接受.txt文件”,这是我在自定义异常中的toString()方法中创建的。我似乎无法使它工作,下面是代码,有些可能会有帮助,我希望我已经正确地解释了,因为我刚开始使用Java,注意我已经注释掉了一些代码,因为我正在尝试一些不同的东西来使它工作。
ReadWrite.java
import java.io.*;
p
我正在尝试序列化一个对象,然后从文件中反序列化。到目前为止,序列化工作(或者它报告它在运行时工作)。由于某些原因,当我试图反序列化它时,它会报告一个StreamCorruptedException。这是报告的堆栈跟踪:
java.io.StreamCorruptedException: invalid stream header: 0A0A5072
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:806)
at java.io.ObjectInputStream.(ObjectInputStream.ja
我想检查设备上是否存在Camera.Parameters.getHorizontalViewAngle()方法(它只在API8中可用,我的min SDK API是7)。我尝试使用“反射”,就像解释的那样,但它捕获了一个错误,指出参数的数量是错误的:
java.lang.IllegalArgumentException: wrong number of arguments
有人能帮上忙吗?
Camera camera;
camera = Camera.open();
Parameters params = camera.getParameters();
Method m = Camera.Par