【问题标题】:Difference between .getclass() and .forName() [duplicate].getclass() 和 .forName() 之间的区别 [重复]
【发布时间】:2014-10-10 09:24:07
【问题描述】:

.getclass() 和 .forName() 之间的区别是什么,除了一个使用对象和其他使用类名这一事实...... 我的困惑源于对他们两个的不同意见......有人说两者都返回对象......而有人说 .forname() 加载类而 .getClass() 返回对象 谢谢...

【问题讨论】:

标签: java


【解决方案1】:
public final Class<?> getClass() 

:返回调用它的Object的运行时类。如果一个对象的实例可用,那么获取它的Class最简单的方法是调用Object.getClass()

public static Class&lt;?&gt; forName(String className)

返回与具有给定字符串名称的类或接口关联的 Class 对象。

Class.forName("fullyQualifiedClassName") 的调用会导致类被动态加载(在运行时)。对forName("fullyQualifiedClassName") 的调用会导致类被初始化(即,JVM 在类加载后执行其所有静态块)

【讨论】:

    猜你喜欢
    • 2014-08-16
    • 2011-04-08
    • 2012-11-24
    • 2013-06-05
    • 2021-09-29
    • 2020-05-27
    • 2016-03-23
    • 2012-08-11
    • 2012-11-24
    相关资源
    最近更新 更多