【发布时间】:2015-08-26 13:55:57
【问题描述】:
我知道,如果我们对字节值执行算术运算,那么它会隐式提升为 int 并且结果将是 int,因此我们需要将其显式转换为 byte 以便将结果存储在字节变量。 但我想问-
- 从 byte 到 int 的转换是否发生在 当我们在算术中使用它时被声明或发生 手术?因为我使用的java反编译器将它从 声明时将字节转换为int。所以,它是反编译器吗 问题还是真的如此。
- 如果真的发生在申报时,那为什么要存储 超出字节范围的值显示错误?
例如- 代码是-
public class Hello
{
public static void main(String[] args)
{
byte a=90;
}
}
【问题讨论】:
-
编译时计算。
标签: java compiler-construction int byte