1.通过类对象的getClass()方法获取
package com.getObject; class Message{} public class demo { public static void main(String[] args) throws Exception{ Message msg = new Message(); System.out.println(msg.getClass()); } }
运行结果:
class com.getObject.Message
2. 通过类的静态成员表示,每个类都有隐含的静态成员class:
package com.getObject; class Message{} public class demo { public static void main(String[] args) throws Exception{ Class<?> msg = Message.class; System.out.println(msg); } }
运行结果:
class com.getObject.Message
3.通过Class类的静态方法forName()方法获取。
package com.getObject; class Message{} public class demo { public static void main(String[] args) throws Exception{ Class<?> msg = Class.forName("com.getObject.Message"); System.out.println(msg); } }
运行结果:
class com.getObject.Message
区别与通过new创建对象(编译时静态加载),在开发时如果需要动态的加载我们的功能模块,forName()方法可以帮助我们实现程序运行时类的动态加载。