值类型与引用类型

   1、

引用类型表示你操作的数据是同一个,也就是说当你传一个参数给另一个方法时,你在另一个方法中改变这个变量的值,那么调用这个方法时传入的变量的值也将改变.
值类型表示复制一个当前变量传给方法,当你在这个方法中改变这个变量的值时,最初生命的变量的值不会变.

2、
值类型也就是常见的基本数据类型:数值型,字符型,布尔型

引用类型:除了基本数据类型外,所有的类型都称为引用类型

3、
举例说明,在内存中有一个长方形(假设),里面放着一个数n

值类型是基本数据类型,如int,float,byte,double,boolean,char。

值传递就是把长方形里面的数n拷贝出来传给别的参数或者方法,不管你如何操作,长方形和里面的数n没有发生改变。

引用类型都是对象,如数组,String等等。

引用传递是把长方形的地址传递给别的参数或方法,别的参数或方法会通过这个地址拿到数n,如果对这个地址进行操作,长方形里面的值就会发生改变。

相对于值类型来说,操作作用在它的复制体上;相对于引用类型来说,操作作用在它本身上。

   4、值传递:基本数据类型赋值都属于值传递,值传递传递的是实实在在的变量值,是传递原参数的拷贝,值传递后,实参传递给形参的值,形参发生改变而不影响实参。

引用传递:引用类型之间赋值属于引用传递。引用传递传递的是对象的引用地址,也就是它的本身(自己最通俗的理解)。引用传递:传的是地址,就是将实参的地址传递给形参

,形参改变了,实参当然被改变了,因为他们指向相同的地址。

 


posted @ 2016-02-29 22:40  1011042043  阅读(140)  评论(0编辑  收藏  举报