Integer原理解析
1、语法糖
Integer是java对int基本类型的一个封装类型,主要封装了一些整型的经常会使用到的方法,在日常开发中使用Integer主要有种创建对象的方式:
Integer a=1;
Integer b=new Integer(2);
Integer c=Integer.valueOf(3);
前一种较为常见,后两种看似更符合java语法的概念,众所周知,java类型分为基本类型和对象类型两种,基本类型为char,int,double等,对象类型有jdk对象和自己创建的对象,所以Integer属于对象类型,int属于基本类型,对jvm而言,类似于Integer a=1这种将基本类型赋值给对象类型的操作是不允许的,但是在日常开发过程中使用这种创建对象的方式并不会报错,原因是编译器的语法糖技术,(语法糖是指在不改变jvm语法的情况下,用于方便编程人员编码的操作)。
其原理为:
在编译阶段,编译器在检测到该语句的时候,会自动将该行代码转换成
Integer a=1;//编译前代码
Integer a