我已经考虑过如何使用表示类名的java.lang.String并确定完全限定名,然后使用Java.lang.Class.forName(FullyQualifiedName)将字符串转换为类。
这让我感到困惑,因为我不能将Java.lang.Class.forName()与表示类名称的Java.lang.String一起使用,例如“Address”,因为我需要完全限定的名称或者我得到一个例外.ClassNotFoundException让我回到需要知道完全限定的名称,但是当我不能使用Java.lang.Class.forName()时。
我只是坚持我目前的知识。我已经使用谷歌进行了搜索,甚至创建了这个问题,但我敢打赌,这已经被问到了答案。有人请指出我正确的方向吗?
注意:应该删除此问题,因为它似乎无法执行OP在Java中请求的内容。
答案 0 :(得分:5)
类的完全限定名称是以包名称为前缀的类的名称。例如,如果类Address
位于包com.mycompany.myproject
中,则类Address
的完全限定名称为com.mycompany.myproject.Address
。
Java只能通过其完全限定名来查找类(除非该类在默认包中 - 但是该类的简单名称也是完全限定名)。
您需要知道您的课程在哪个包中,否则无法使用Class.forName(...)
加载课程。