栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何找出Java中标识符的声明类型?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何找出Java中标识符的声明类型?

您实际上是在问有关变量声明的问题,

fruit
而不是对象的实际运行时类型(
Apple
在这种情况下为)。

我认为这通常是一个坏主意:您只是声明了变量,并告诉编译器它为a

Fruit
,那么为什么现在需要找出这个变量?

只是要使事情更加混乱,值得注意的是,您还可以具有多个具有不同声明类型的变量来引用同一对象(仍然是Apple):

Fruit fruit = new Apple(); // fruit declared as Fruit, but refers to an AppleObject thing = fruit;      // thing declared as Object, refers to the same Apple

如果您真的想找出已声明的类型,则可以选择以下几种方法:

  • 创建
    fruit
    一个实例变量,并使用反射查询声明的类型。
  • 对源代码进行一些处理以找到变量声明
  • 对已编译的字节码进行一些处理以找到声明类型(尽管有可能激进的编译器甚至可以完全优化编译时间声明,例如,在意识到该代码中的结果只能是苹果之后)

我认为所有这些都很难看,所以我的一般建议是“不要这样做”。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/494894.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号