什么是Java语法糖?
语法糖(Syntactic Sugar),也称糖衣语法指在计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。Java中最常用的语法糖主要有泛型、变长参数、条件编译、自动拆装箱、内部类等。虚拟机并不支持这些语法,它们在编译阶段就被还原回了简单的基础语法结构,这个过程成为解语法糖。
Java有哪些常见的语法糖
泛型与类型擦除、自动装箱和拆箱、遍历循环、变长参数、条件编译、内部类、枚举类、断言语句、对枚举和字符串的switch支持
举例1:泛型的语法糖
原理:Java中的参数化类型只在源码中存在,在编译后的字节码中,已经被替换为原来的原生类型了,并且在相应的地方插入了强制转换代码。对于运行期的Java语言来说,ArrayList<Integer>和ArrayList<String>就是同一个类。所以说泛型技术实际上就是Java语言的一颗语法糖,Java语言中的泛型实现方法称为类型擦除,基于这种方法实现的泛型称为伪泛型。
代码:
报错:
如果你反编译软件 你可以反编译一下带有泛型的小程序,那样将会更加直观,
|