学习笔记——Java中数据类型,对象,传递的通俗理解
2017-01-18 13:29
281 查看
1.数据类型分为引用数据类型和基本数据类型:
形象的例子:基本数据类型可以理解为给你手头放上10元现金;而引用数据类型则是告诉你10元现金存放在哪儿。你可以通过这个地址找到现金。在java中,除了四类八种基本类型外(byte,short,int,long, float,double , char , boolean),所有的类型都称为引用类型(数组,类,接口,字符串)
2.传递分为值传递和引用传递:
形象的例子:值传递即是你把10元现金转交给其他人,而引用传递则是你把10元现金存放的位置告诉其他人。用简单的代码来理解:
Plane p = new Plane (); Plane p2 = p;
new Plane ();这句话将在堆内存中开辟一块空间,并且得到了相应的地址。
Plane s = new Plane ();则是将得到的地址马上给予p;p是引用数据类型并且存放在栈内存中。
p2 = p;则是将p的地址赋值给p2。
所以可以理解为,你从头至尾根本没有直接操纵过对象,而是通过地址间接操作对象(就像用遥控玩玩具飞机一样)
此时,p和p2拥有相同的地址,它们操作同一对象,无论是谁改变的都是同一对象的状态(两个遥控操纵同一架飞机)
int a = 1; int b = a; a = 2; println(b)//输出1
由于int是基本数据类型,所以此处没有”地址”而是值的传递;int b = a;是将a的值赋予b,所以即使a后来变成了2也不会对b造成任何影响。
相关文章推荐
- 重新理解Java -- 类型、值、对象、参数传递
- 重新理解Java -- 类型、值、对象、参数传递
- java和C++互调----(传递基本数据类型和对象)
- 2006-07-28 Java的常用包,"=="和"equals"的用法,基本数据类型与引用类型,对象的克隆
- 全面理解Java中的String数据类型-Java基础-Java-编程开发
- 如果java中一个方法不知道要传递多少参数也不知道传递过来的是什么类型的数据你会怎么做?
- 用”堆栈区数据复制”理解Java赋值和参数传递机制的心得
- 个人对Java中String对象的传递的理解(错误之处,请给与纠正,
- 理解Java中的String数据类型
- 全面理解Java中的String数据类型
- Java数据类型和参数传递
- 用"堆栈区数据复制"理解Java赋值和参数传递?机制的心得
- 解析Java中的String对象的数据类型
- 序列化对象到Xml文件以及反序列话Xml文件到对象(序列化数据到8个Java原型类型)
- 全面理解Java中的String数据类型(转)
- 全面理解Java中的String数据类型
- 全面理解Java中的String数据类型
- 温习Java笔记(2):理解java语言的数据类型
- 转: 用”堆栈区数据复制”理解Java赋值和参数传递机制的心得
- 全面理解Java中的String数据类型