什么是“方法的对象”和“类的对象”?
问题描述:
我正在阅读oracle文档。什么是“方法的对象”和“类的对象”?
'当线程调用同步方法时,它会自动获取该方法对象的内部锁,并在方法返回时释放它。
这里他们提到了“方法”的对象。
方法的对象究竟是什么?
现在在这里,他们都在提与CLAS
相关对象的线程获得了与类相关的Class对象的内部锁。“
然后什么是与类关联的Class对象?
他们有什么区别?
答
类只是一个用户的自定义数据类型,表示一些方法和变量。
对象是该类的实例变量,如蓝图。
还有类方法和对象方法。
您将对象方法发送到该类的特定实例,并将Class方法发送到该类。
例如,您有Class Car。它只是描述了汽车的结构以及它可以做什么。然后,它可能有方法Create a new car
。因此,比起梅赛德斯和奥迪,你的物品会少一些。而这个对象可以响应方法驱动和停止。是否有意义?
答
一个对象是一个可以被操作或访问的实例化实体。
答
方法的对象,是该方法当前正在使用的对象。
类对象是类层次结构的根。 每个类都有Object作为超类。(不要被这个混淆) 所有对象,包括数组,都实现了这个类的方法。
答
我认为方法的对象是非静态方法,也就是说,该方法是特定于实例的方法。
虽然类方法是在类中声明的静态方法。取决于可以像全球功能的语言
MyClass myInstance = new MyClass();
// Method's object:
// Specific to the instance and won't be called by separate threads at he same time for myInstance, but can be called on another instance of MyClass
myInstance.method();
// Class method:
// Is at the class level, won't be called by separate threads at the same time at all.
MyClass.myStaticMethod();