我有一个关于引用变量的问题。我的问题是声明变量的类型是指对象的类型还是存储在其中的引用的类型?
我在这个主题上找到了Edwin Dalorzo非常有趣的答案。他描述了每个引用都有一个类型,当我们执行类型转换时,它只会更改用于引用该对象的引用的类型(而不是该对象本身的类型!)。
所以我的问题是,引用变量的类型是否告诉我们存储在其中的引用的类型。当然,对象的类型和引用的类型是相同的。
假设
还是编译器完全忽略存储在其中的数据(引用)的类型,并且只考虑底层对象的类型?方法返回类型也是如此。
我在这个主题上找到了Edwin Dalorzo非常有趣的答案。他描述了每个引用都有一个类型,当我们执行类型转换时,它只会更改用于引用该对象的引用的类型(而不是该对象本身的类型!)。
所以我的问题是,引用变量的类型是否告诉我们存储在其中的引用的类型。当然,对象的类型和引用的类型是相同的。
假设
B a = new B();
现在B是否告诉编译器a保存的是类型为B的引用?还是编译器完全忽略存储在其中的数据(引用)的类型,并且只考虑底层对象的类型?方法返回类型也是如此。