java的数据类型有两类:
l PrimitiveType(简单类型)
l ReferenceType(引用类型)
1.1 PrimitiveType(简单类型)
(参考:langspec-3.0/typesValues.html#4.2)
PrimitiveType的分类如下所示:
l PrimitiveType:
NumericType
boolean
l NumericType:
IntegralType
FloatingPointType
l IntegralType: one of
byte short int long char
l FloatingPointType: one of
float double
PrimitiveType是java预定义的类型,并且使用保留字命名。比如int、long、float等。由此看来其包装类不算PrimitiveType。
1.2 ReferenceType(引用类型)
(参考:langspec-3.0/typesValues.html#4.3)
ReferenceType有三种类型:类、接口、和数组。
2. 变量
(参考:langspec-3.0/typesValues.html#4.12)
A variable is a storage location and has an associated type, sometimes called its compile-time type, that is either a primitive type (§4.2) or a reference type (§4.3).
变量是关联于特定类型的存储单元,所关联的类型有时叫做变量的编译时类型,即,既可以是简单类型也可以是引用类型。
2.1 简单类型变量
A variable of a primitive type always holds a value of that exact primitive type.
简单类型的变量总是执持简单类型的值。
2.2 引用类型变量
A variable of a class type T can hold a null reference or a reference to an instance of class T or of any class that is a subclass of T. A variable of an interface type can hold a null reference or a reference to any instance of any class that implements the interface.
类型是T的类的变量可以执持null引用,或者类T及其子类的实例引用。接口类型的变量可以执持null引用,或者任何实现该接口的类的实例引用。
注:与langspec2.0不同的是,3.0引入了泛型的概念,其中有Type Variable的概念,上面的T就是一个Type Variable。
3.赋值与传递
如上所述,可以得出下面结论:
1) 对于简单类型变量的赋值是按值传递。就是说直接把数值存放到变量的存储单元里。
2) 对于引用类型的变量,赋值是把原对象的引用(可以理解为入口地址),存放在变量的存储单元里。
3.1 对象的赋值
简单类型的赋值很容易理解,这里仅讨论对象的赋值。所有引用类型的实例就是我们常说的对象。
可以这样说,除了null以外,任何变量的初始赋值都是分两步:
1) 创建对象实例
2) 把对象实例的引用赋值给变量。
比如:
Object o1 = new Object();
收藏 http://www.qqread.com/java/2007/01/c293614.html相关专题
- Java环境安装配置 (5658篇文章)
- Java编程开发手册 (8309篇文章)
- 精通Hibernate之映射继承关系(四) (0次浏览)
- 何不将Java与.NET合二为一? (0次浏览)
- Hibernate的JNDI名称绑定分析 (0次浏览)
- 精通Hibernate之映射继承关系(一) (0次浏览)
- 精通Hibernate之映射继承关系(二) (0次浏览)
- 美国计算机教授语出惊人:Java对学生有害 (0次浏览)
- JDK 6 JRE 6 Update 4 (0次浏览)
- 三步教你改善Java代码质量 (0次浏览)
- Java语言入门 简述Java语言回收机制 (0次浏览)
- 2008年Java开发者最迫切的五个期望 (0次浏览)



