一、8大基本类型
8大基本类型主要分为4类:整型、小数类型、真假类型和字符类型。
1、整型
包含:byte、short、int、long,分别对应1、2、4、8个字节。
2、小数类型
包含:float、double,分别对应4、8个字节。
3、真假类型
即为boolean,只含true,false两个值,所以可以看做1字节。但是在《Java虚拟机规范》中,有如下描述:“在Java虚拟机中没有任何供boolean值专用的字节码指令,Java语言表达式所操作的boolean值,在编译之后都使用Java虚拟机中的int数据类型来代替,而boolean数组将会被编码成Java虚拟机的byte数组,每个元素boolean元素占8位“,即:单独使用boolean时占用了4字节,单在数组中boolean只占用1字节。
即为char,表示单个字符,一般看做是2字节。char在设计之初的时候被用来存储字符,两个字节可以存储2^16(65536)种字符,这个数量符合大多数国家的语言字符个数,于是Java团队使用unicode作为编码,一个char作为2个字节来存储。但是,unicode只是一个标准,具体的实现还是有如:UTF-8或UTF-16等编码。
不一定,与我们使用的字符集有关系,如果使用unicode编码,是2字节,使用ASCII编码时,char只占用1字节,如果使用UTF-8编码格式呢?UTF-8是不定长编码,编码的长度是动态的,所以不一定。
这个问题依旧归结于使用的编码集,如果使用ASCII,那肯定不能存储,如果采用UTF-8编码,则可以。
二、对象
对象是由8大基本数据类型、数组和其他对象组合而成的东西。世界万物都由元素周期表中的基本元素组成,8大基本类型就相当于化学中的元素周期表,而对象就相当于世界万物。
原文:https://www.cnblogs.com/lrzienhi/p/11830966.html