java 类对象和类型

标签 java class object

给定一个类

public class A {
  public static int classVal;
}

在运行时,类型A是否成为对类对象的引用?

public static void main(String[] args) {
  A a = new A(); 
  A.classVal = 100;
  A.classVal = 200;
}

如果A.classVal是对静态类变量的引用,那么A是对代表该类的对象的引用吗?

a.getClass() 是否与 A 引用同一个对象?

澄清

如果A.classVal是一个引用,并且A只不过是一个名称,那么类是否只是成为使用类名称作为查找表的一部分关键?我试图了解类在运行时会发生什么。

最佳答案

不,A 根本不是引用。这只是类(class)名称。 A 本身并不是一个表达式 - 它没有值。它只能是另一个表达式的一部分(例如 A.classValnew A())。

关于java 类对象和类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31264383/

相关文章:

c++ - 在C++中将一种结构类型分配给另一种类型

Java 嵌套监视器(摆脱明显的死锁)

java - 无法使用 Java 语言访问类,但可以使用 Kotlin 访问类

c++ - 函数返回结构体指针

python - 返回类中的元素,Python。美丽汤

php - 在非对象上调用成员函数 getClientOriginalName()

java - 无法确定任务 ':gobblin-distribution:buildDistributionTar' 的依赖关系

java - 在 Java 中,VB6 中是否有类似 "DoEvents"的内容

c++ - 错误 : Invalid base class C++

C++:将自动分配的对象添加到 std::vector