day43-反射02( 五 )


day43-反射02

文章插图
例子2:
在例子1中的程序里创建一个B类对象,打上断点,debug源码:
day43-反射02

文章插图
可以看到在底层中,使用了对象锁synchronized (getClassLoadingLock(name)) :
day43-反射02

文章插图
也就是说,加载类的时候,是有类的同步控制机制 。
正因为有这个机制,才能保证某个类在内存中,只有一份Class对象 。
【day43-反射02】

经验总结扩展阅读