java class对象oracle,java – 无法理解Class对象

有关内部锁和同步的Oracle

Java文档说:

You might wonder what happens when a static synchronized method is

invoked,since a static method is associated with a class,not an

object. In this case,the thread acquires the intrinsic lock for the

Class object associated with the class. Thus access to class’s static

fields is controlled by a lock that’s distinct from the lock for any

instance of the class.

我没有完全理解Class对象的概念.在了解了一些在线内容之后,我了解到:

A Class object is sort of a Meta object describing the class of an object such as name,package etc.

我的问题是:

>什么时候创建?

>在某些时间收集垃圾吗?

>由于它是由synchronized static方法使用的,它是否意味着每个JVM只有一个Class对象的实例?

[更新]

在manouti提供的答案的评论部分中添加了一个新问题,因为他提到可以有多个Class对象实例:

>如果存在多个Class对象实例,是否有可能同时由多个线程访问静态同步方法?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值