Просто ви можете побачити, що можливо для IsPrimitive повернути істину (оскільки у вас є достатньо відповідей, що показують, чому це неправда):
public class Main
{
public static void main(final String[] argv)
{
final Class clazz;
clazz = int.class;
System.out.println(clazz.isPrimitive());
}
}
Це має значення для роздумів, коли метод приймає "int", а не "Integer".
Цей код працює:
import java.lang.reflect.Method;
public class Main
{
public static void main(final String[] argv)
throws Exception
{
final Method method;
method = Main.class.getDeclaredMethod("foo", int.class);
}
public static void foo(final int x)
{
}
}
Цей код не вдається (не вдається знайти метод):
import java.lang.reflect.Method;
public class Main
{
public static void main(final String[] argv)
throws Exception
{
final Method method;
method = Main.class.getDeclaredMethod("foo", Integer.class);
}
public static void foo(final int x)
{
}
}
int.class.isPrimitive()
врожайністьtrue
;Integer.class.isPrimitive()
врожайністьfalse
.