相关疑难解决方法(0)

使用类名创建实例并调用构造函数

有没有办法在给定类名(动态)的情况下创建特定类的实例,并将参数传递给其构造函数.

就像是:

Object object = createInstance("mypackage.MyClass","MyAttributeValue");
Run Code Online (Sandbox Code Playgroud)

哪个"MyAttributeValue"是构造函数的参数MyClass.

java reflection instantiation

299
推荐指数
7
解决办法
42万
查看次数

异常 - 类 [B 无法转换为类 [C([B 和 [C 位于加载程序 'bootstrap' 的 java.base 模块中)

我最近将应用程序从 Java 1.8 升级到 Java 11,并开始看到此错误

com.pricemax.util.exceptions.IllegalUsageError: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap')
    at com.pricemax.util.helpers.CharHelper.toCharArray(CharHelper.java:77)
    at com.pricemax.etl.steps.transform.price.PricePatternParser.parse(PricePatternParser.java:87)
    at com.pricemax.etl.steps.transform.price.PatternPriceSelector.cleanPrice(PatternPriceSelector.java:227)
    at com.pricemax.etl.steps.transform.price.PatternPriceSelector.cleanPrice(PatternPriceSelector.java:152)
    at com.pricemax.etl.steps.transform.price.PatternPriceSelector.performTransform(PatternPriceSelector.java:99)
    at com.pricemax.etl.steps.transform.BaseTransform.performTransformARC(BaseTransform.java:62)
    at com.pricemax.etl.steps.transform.BaseTransform.transformARC(BaseTransform.java:49)
    at com.pricemax.etl.process.parallel.TransformThread.doWork(TransformThread.java:99)
    at com.pricemax.etl.process.parallel.BaseParallelThread.run(BaseParallelThread.java:57)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.ClassCastException: class [B cannot be cast to class [C ([B and [C are in module java.base of loader 'bootstrap')
    at com.pricemax.util.helpers.CharHelper.toCharArray(CharHelper.java:73)
    ... 9 more
08/05/2022 17:46:47:0511 - [WARN] - Fatal error in …
Run Code Online (Sandbox Code Playgroud)

java casting

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×2

casting ×1

instantiation ×1

reflection ×1