sunny-8

Java编译器的两点优化:
1.对于short\byte\char三种类型,如果右侧赋值的数值没有超过范围,
那么javac编译器将会自动隐含地为我们补上一个(short)(byte)(char)。
如果超过了范围,编译器会自动报错。

2.在给变量进行赋值的时候,如果右侧的表达式中全都是常量,没有任何变量,
那么编译器javac将会直接计算若干个常量表达式,得到结果。
例如:short result = 3+5;编译之后得到的.class字节码文件中直接就是:
short result = 13;右侧的常量结果数值没有超过左侧范围,所以正确。
这称为“编译器的常量优化”。

但是,一旦表达式中有变量参与,就不能进行这种优化了。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-02-14
  • 2021-12-25
  • 2022-12-23
  • 2021-10-14
  • 2022-01-14
  • 2022-12-23
猜你喜欢
  • 2021-10-29
  • 2018-05-03
  • 2022-12-23
  • 2021-12-10
  • 2021-11-21
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案