Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
动态类加载(Java11)_Java_Java 11 - Fatal编程技术网

动态类加载(Java11)

动态类加载(Java11),java,java-11,Java,Java 11,我有以下代码 ClassLoader classLoader = IFileTransferClient.class.getClassLoader(); Class f_t_c = classLoader.loadClass(fileGroupConfig.getFileTransferClientClassName()); fileTransferClient = (IFileTransferClient) f_t_c.newInstance(); 编译器(Java11)抱怨newInsta

我有以下代码

ClassLoader classLoader = IFileTransferClient.class.getClassLoader();
Class f_t_c = classLoader.loadClass(fileGroupConfig.getFileTransferClientClassName());
fileTransferClient = (IFileTransferClient) f_t_c.newInstance();
编译器(Java11)抱怨
newInstance
已被弃用


如何将上述代码转换为Java 11编译器?

这是对
类#newInstance
的长期反对

f_t_c.getConstructor().newInstance();
上面的调用将调用普通(在本例中为默认)构造函数,
它允许在构造时进行所有处理,如异常。

javadoc of
Class.newInstance
:“不赞成。此方法传播nullary构造函数引发的任何异常,包括已检查的异常。使用此方法可以有效地绕过编译时异常检查,否则将由编译器执行。该方法通过将构造函数引发的任何异常包装在(选中的)InvocationTargetException中来避免此问题。”下面是示例!