📜  Java对象getClass()(1)

📅  最后修改于: 2023-12-03 15:02:04.452000             🧑  作者: Mango

Java对象getClass()

在Java中,每个对象都有一个getClass()方法,可以用于获取该对象的类。这个方法返回的是一个Class对象,可以用来获取类的信息,例如类的名称、类的修饰符、类的父类、接口等等。

语法
public final Class<?> getClass()
返回值

这个方法返回的是一个Class对象,表示该对象的类。

示例
String str = "Hello World!";
Class<?> strClass = str.getClass();
System.out.println(strClass.getName());

上述代码会输出java.lang.String。我们可以看到,通过getClass()方法,我们可以获取到字符串对象的类名。

应用

getClass()方法的主要应用场景之一是在反射中。在反射中,我们可以使用Class对象来获取类的各种信息,也可以通过Class对象来实例化对象、调用方法、获取或设置属性等等。

Class<?> clazz = Class.forName("com.example.MyClass");
Object obj = clazz.newInstance();
Method method = clazz.getMethod("myMethod", String.class);
method.invoke(obj, "hello");

上述代码中,我们首先通过Class.forName()方法获取MyClass类的Class对象。然后通过newInstance()方法创建该类的实例,再通过getMethod()方法获取到myMethod()方法的Method对象。最后通过invoke()方法调用该方法。

总结

getClass()方法返回的是一个Class对象,可以用于获取对象的类。在反射中,Class对象是非常重要的,可以用来实例化对象、调用方法、获取或设置属性等等。