考察对面向对象的理解,尽量从封装类的特性与功能全方位进行回答。
Integet是基本数据类型int的封装类,在java中有八种基本数据类型,他们都有一一对应的封装类型,基本数据类型与封装数据类型差别有很多。
比如说:
- int 类型我们可以直接定义一个变量名称进行赋值,但是 Integer 需要去使用new关键字来创建对象;Integer 存储在堆内存中,int 直接存储在栈空间。
- 基本类型和 Integer 类型混合使用时,Java会自动通过装箱和拆箱来实现类型的转化;
- Integer 作为一个对象类型,封装了一些方法与属性,我们可以利用这些方法来封装数据,使用时更加灵活;
- 作为成员变量,Integer 默认值是 null , int 的默认值是0;
为什么设计成封装类型?
因为Java本身是一门面向对象的语言 ,对象是Java的基础操作单元。一切操作都是以对象作为基础(比如说集合里存储的元素也只支持Object类型,普通类型是无法通过集合类型访问的)。