jvm编译器的优化
2024-09-04 07:30:34
1.对byte、short、char赋值时,若右边范围没有超过左边类型的最大表达范围则会自动隐式的加上(byte)、(short)、(char)强制转换;若右边范围超过了左边类型的最大表达范围则编译失败
byte b1 = 65;等效于byte b2 = (byte)65;//整数的字面量类型为int
byte b3 = 128;//编译失败,由于128超过了byte类型的最大表达范围,因此这里需要进行显式的强转
2.在赋值时,若右边都是常量则会在编译时将右边常量的计算结果赋值给左边;若右边不全是常量则不会在编译的时候计算赋值
short c = 10 + 20 + 99;//在编译时直接计算常量的结果并隐式的强制转换后赋值给c,等效于short c = 129;
short c = 10 + 20 + 9999999;//编译失败,虽能在编译时直接计算常量的结果并隐式的强制转换后赋值给c,但是常量的计算结果超过了左边类型的最大表达范围
short a = 10;short b = 20;short c = a + b;//编译失败,右边存在变量因此无法实现在编译时自动计算值以及赋值
最新文章
- $.type 怎么精确判断对象类型的 --(源码学习2)
- asp.net mvc 简单文件下载
- struts2基本配置
- 把Linux安装到移动硬盘上
- 【转】10.4新特性-ArcGIS 10.4矢量切片介绍
- 使用/proc实现内核与用户空间通信
- Android下实现win8的按钮点击效果
- 72_leetcode_Construct Binary Tree from Preorder and Inorder Traversal
- yii2 队列 shmilyzxt/yii2-queue 简介
- 反射型 DDoS 攻击的原理和防范措施
- React事件绑定几种方法测试
- 如何设置记事本( .txt文件)的默认编码为UTF-8?
- python3 sys.path
- 数据库的Connection、Cursor两大对象
- am335x uboot2016.05 (MLO u-boot.img)执行流程(转)
- Educational Codeforces Round 3 C. Load Balancing
- CentOS SVN服务器管理多项目
- POJ 3662	Telephone Lines (二分 + 最短路)
- avalonJS-源码阅读(二)
- iOS10 完美降级 iOS9.3.2,保留全部数据
热门文章
- sun.misc.Unsafe中一些常用方法记录
- 中文维基百科分类提取(jwpl)--构建知识图谱数据获取
- 7个有用的JS技巧
- python之基础中的基础(二)
- mitmproxy--Cannot establish TLS with client (sni: e.crashlytics.com): TlsException(";(-1, 'Unexpected EOF')";,) 解决办法
- 在webform中使用ajax
- absoulue与relative配合定位盒子居中问题
- Ubuntu18.04安装mysql并配置远程访问
- RedisDeskTopManager连接时提示:can't nonnect to redis-server
- BUGFIX 09 - 记一次Java中String的split正则表达式匹配 - 引发`OutOfMemoryError: Java heap space`的oom异常 排查及解决 -Java根据指定分隔符分割字符串,忽略在引号里面的分隔符