gpt4 book ai didi

java - 将 class.forName 创建的类作为参数传递

转载 作者:行者123 更新时间:2023-11-29 19:03:40 25 4
gpt4 key购买 nike

我有扩展 Fragment 的类“Q1”。我使用 class.forName 创建它,然后我需要将它作为参数传递给接收 (int,Fragment) 的方法,但是存在 Wrong second type 错误。我不能只将对象转换到“Q1”,因为我将创建更多类,如“Q2、Q3”等。是否可以将未知类传递给此方法

Object clazz = Class.forName(fClass).newInstance(); //fClass is the class name
fTrans.replace(FragmentPlace, clazz);// Wrong second type

P.S 如果我使用不是由 class.forName 创建的对象,这将完美地工作。像这样

Q1 clazz = new Q1();
fTrans.replace(FragmentPlace, clazz);

最佳答案

您可以尝试将第二个参数转换为 Fragment 吗?因为在您的示例中,您将 Object 作为第二个参数传递:

fTrans.replace(FragmentPlace, (Fragment) clazz);

关于java - 将 class.forName 创建的类作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47981679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com