美文网首页
早期编译优化——Java语法糖的味道

早期编译优化——Java语法糖的味道

作者: JESiller | 来源:发表于2018-04-27 14:43 被阅读68次

    1.泛型与类型擦除

    泛型是JDK1.5一项新增特性,它的本质参数化类型的应用,也就是说所操作的数据类型被指定为一个参数,这个参数可以应用在类、接口和方法的创建之中,分别称为泛型类、泛型接口、泛型方法。
    Java语言的房型规则:它只在程序源码中存在,在编译之后的字节码文件中就已经替换为原来的原生类型,并且在响应的地方插入类型转换,因此对于运行期的Java语言来说,ArrayList<String> 和ArrayList<Integer>就是同一个类,所以泛型就是Java语言的一个语法糖

    泛型擦除前的例子
    泛型擦除后的例子

    2.自动装箱、拆箱,遍历循环

    代码编译之前 代码编译之后

    3.条件编译

    Java语言使用条件编译,方法 就是使用条件是常量的if语句,if语句不同于其他Java代码,在编译阶段就会被运行,生成的字节码只会包括条件成立的Java语句,而不会包括分支语句代码。
    Java中条件编译的实现,也是Java语言的一颗语法糖,根据布尔常量的真假,编译器会把分支中不成立的代码语句消除掉。这一操作将在编译器解除语法糖阶段完成。

    相关文章

      网友评论

          本文标题:早期编译优化——Java语法糖的味道

          本文链接:https://www.haomeiwen.com/subject/jtdblftx.html