都知道,java里面定义变量的时候,都有两种方法。如定义一个整型变量:
int a = 123;//1
Integer b = new Integer(123);//2
那么在实际应用中,应该使用那种方式呢?记得当时在做SSH整合框架开发时,在使用注解建Model中,曾使用了int这种方法定义了一些字段。当我在service层或者action层需要判断这字段是否为null时,就会出现错误。
Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。另外,Java 还为每个原始类型提供了封装类(Wrapper)。下面是java里面的原始类型和对应的封装类:
boolean Boolean
char Character
byte Byte
short Short
int Integer
long Long
float Float
double Double
引用类型和原始类型的行为完全不同,并且它们具有不同的语义。例如,假定一个方法中有两个局部变量,一个变量为 int 原始类型,另一个变量是对一个 Integer 对象的对象引用,如上面定义的a和b变量。
这两个变量都存储在局部变量表中,并且都是在 Java 操作数堆栈中操作的,但对它们的表示却完全不同。(本文中以下部分将用通用术语堆栈代替操作数堆栈或局部变量表。)原始类型 int 和对象引用各占堆栈的 32 位。(要表示一个 int 或一个对象引用,Java 虚拟机实现至少需要使用 32 位存储。)Integer 对象的堆栈项并不是对象本身,而是一个对象引用。
Java 中的所有对象都要通过对象引用访问。对象引用是指向对象存储所在堆中的某个区域的指针。当声明一个原始类型时,就为类型本身声明了存储。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。如以下代码:
int a =1;
int b = 2;
a = b;
b++;
//------------输出a和b-------------
System.out.println("a ="+a+",b ="+b);
Point c = new Point(0, 0);
Point d = new Point(1, 1);
c = d;
c.setLocation(3, 3);
System.out.println("c:"+c.toString());
System.out.println("d:"+d.toString());
输出的结果是:
a =2,b =3
c:java.awt.Point[x=3,y=3]
d:java.awt.Point[x=3,y=3]
这里a和b都在意料当中,而调用c.setLocation(3, 3)后,d的值也被修改了,就是因为在执行c=d后,c和d两个变量都指向了同一个实例,即c和d两个变量保存了相同的引用地址,当c.setLocation时,是实例的值改变了,而c和d保存的值没有变化。
分享到:
相关推荐
Java教程中的核心知识点主要涉及Java的基本...以上就是Java教程中关于基本数据类型、引用类型、常用包以及其他关键概念的详细解析,这些知识构成了Java编程的基础。理解并掌握这些内容,将有助于深入学习和应用Java。
Java是一种静态类型语言,它提供了8种基本数据类型,用于存储原始数据。以下是对Java基本数据类型的简要概述: 基本数据类型直接存储数据,不存储引用。 每种类型有固定的内存大小和取值范围。 它们具有默认值,未...
* 变量的类型有基本类型和引用类型两种。 * 运算符有算术运算符、关系运算符、逻辑运算符、赋值运算符等。 * 控制流语句有 if 语句、switch 语句、while 语句、for 语句等。 三、方法重载 * 方法重载指的是在一个...
### Java基础:对象及引用详解 #### 一、Java中的对象与引用概念 在Java编程语言中,理解和掌握对象和引用的基本概念是非常重要的。这两者虽然紧密相关,但也有本质的区别。 **对象**:在Java中,对象是类的一个...
数据类型与引用数据类型在内存结构上的主要区别在于它们存储方式和内存分配的不同。...(5)理解基本数据类型和引用数据类型的内存模型对于理解和调试Java程序至关重要,特别是涉及到对象和数组的操作时。
首先,Java中的数据类型分为两大类:基本数据类型和引用数据类型。基本数据类型是Java语言预定义的,它们直接存储值,没有实例化的过程,而引用数据类型主要指的是类、接口和数组,它们在内存中表现为对象,存储在堆...
Java有两种类型的数据类型:基本数据类型和引用类型。基本数据类型直接存储数据值,而引用类型则存储对数据对象的引用。基本数据类型包括byte、short、int、long、float、double、char和boolean。引用类型包括类、...
本资源“JAVA数据类型思维导图”提供了一种直观的方式来理解和记忆Java中的数据类型,包括基本数据类型和引用数据类型。下面将对这两个主要的数据类型进行详细解释。 1. 基本数据类型(Primitive Data Types) - ...
在 Java 中,还有两种引用类型:类类型和数组类型。 三、Java 运算符 Java 语言支持各种运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符和位运算符。这些运算符可以用于执行不同的操作,例如算术运算...
然后,PPT将深入讲解Java语法基础,这通常包括变量、数据类型(包括基本类型和引用类型)、运算符、流程控制(如if语句、switch语句、for循环、while循环)和方法定义。还会涵盖类和对象的概念,这是面向对象编程的...
在Java编程语言中,数据类型分为两种:基本数据类型(如int、char)和引用数据类型(如类、接口、数组)。而在Java持久化框架Hibernate中,这些数据类型需要与数据库中的字段类型进行映射,以便正确地存储和检索数据...
3. **语法基础**:包括数据类型(基本类型和引用类型)、变量、常量、运算符、流程控制(条件语句和循环语句)、异常处理。 4. **面向对象编程**:深入理解类、对象、封装、继承、多态等概念,这是Java的核心特性。...
第二章讲解了Java编程基础,包括关键字(如"class")、注释类型(单行、多行和文档注释)、数据类型(如基本数据类型和引用数据类型),以及条件判断和循环结构中的`break`和`continue`语句的使用。 第三章进一步...
Java中的数据类型主要分为两大类:简单类型(也称为基本数据类型)和复杂类型。 ##### 1.1 数据类型的基本概念 数据类型是对内存位置的一种抽象表达方式。在Java中,数据类型是语言中最基本的单元定义,它们用来...
2. Java基础语法:包括程序的基本结构,如数据类型、变量、常量的定义与使用,以及基础的程序控制流程,如选择结构(if、switch)和循环结构(while、for、do-while)。 3. 注释、关键字与标识符:解释程序中注释的...
Java 中有两种基本数据类型:基本数据类型和引用数据类型。基本数据类型包括整数类型、浮点类型、字符型、布尔型等。引用数据类型包括类、接口、数组、字符串等。每种数据类型都定义了明确的具体数据类型,在内存中...
Java是一种广泛使用的编程语言,其数据类型系统中包含基本数据类型和引用类型两大类。基本数据类型变量存储的是数据本身,而引用类型变量存储的是指向数据的空间地址。本资料针对Java期末复习,深入讲解了基本数据...
Java基础总结大全涵盖了Java编程语言的核心概念,从JVM、JRE和JDK的区别,到环境变量的设置,再到变量的定义和类型转换,深入浅出地讲解了Java的基础知识。 1. JVM、JRE和JDK: - JVM(Java Virtual Machine)是...