java传递是引用的拷贝,既不是引用本身,更不是对象

原创 2004年07月08日 12:37:00
  看think in java的时候曾经提到过java是传值的,但一直没有引起重视。直到碰到一个实际的问题,才领悟到这个最基本的问题。

 

        Java中一切都是值传递。你可以通过方法来改变被引用的对象中的属性值,却无法改变这个对象引用(Object reference)本身.也就是当一个对象的实例被创建的时候,like this: Apple a = new Apple(); a 存的就是这个对象实例的地址。而这个地址,也就是a的值作为参数传到某个函数中的时候,a本身是不会改变的。

java中的传递参数其实都是值传递(引用就是拷贝对象的一个地址)

其实java函数中的参数都是传递值的,所不同的是对于基本数据类型传递的是参数的一份拷贝,对于类类型传递的是该类参数的引用的拷贝,当在函数体中修改参数值时,无论是基本类型的参数还是引用类型的参数,修改的...
  • qq_36753550
  • qq_36753550
  • 2016年12月24日 22:01
  • 1327

python 对象拷贝——浅拷贝和深拷贝 之函数传递——值传递还是引用传递?

概述: 首先,需要明白的一点是python中“没有指针,但是所有对象均为指针”。在C语言中,我们见到语句int a=8;这句话的意思是创建了一个对象a,a的值赋值为8。如果我们接下来写一句int b=...
  • trochiluses
  • trochiluses
  • 2013年11月22日 11:50
  • 5158

javascript---对象和函数的引用、浅拷贝、深拷贝、递归

javascript---对象和函数的引用、浅拷贝、深拷贝、递归等相关问题!
  • zz410675629
  • zz410675629
  • 2014年04月19日 16:47
  • 2622

java传递是引用的拷贝,既不是引用本身,更不是对象

1. 简单类型是按值传递的     Java 方法的参数是简单类型的时候,是按值传递的 (pass by value)。这一点我们可以通过   一个简单的例子来说明:      /* 例 1 ...
  • u010243555
  • u010243555
  • 2013年10月22日 15:14
  • 486

Java中引用变量的使用_传引用就是传地址。因为"传地址数值"比"传对象的拷贝" 简单 。

通常用术语引用变量来指向一个为实例动态分配的存储空间的任何变量。例如,下面代码中的 fido:   Dog fido = new Dog();   实际上,高级语言中的所有变量都提供了一个...
  • hzw05103020
  • hzw05103020
  • 2016年03月04日 00:11
  • 419

对象作为函数参数时调用拷贝构造函数、引用做函数参数时只是传递地址

对象也可以作为函数的参数传递给函数,其转递方法与传递其他类型的数据一样,可采用值传递和地址传递两种方法。 值传递:是把对象的拷贝而不是本身传递给函数,函数中对参数对象的任何修改都不会影响调用该函...
  • zb872676223
  • zb872676223
  • 2014年10月13日 10:14
  • 652

(基本数据类型值+对象)参数传递方式+对象的引用和拷贝

1.Java参数传递方式 网络上有很多地方都说明java的参数传递方式是值传递,虽然其最终的解释是正确的。但我认为值传递定义为java参数传递方式并不妥。 可以分成两种,便于记忆和理解:1.基本数...
  • techbirds_bao
  • techbirds_bao
  • 2013年02月06日 15:39
  • 1527

Java面试题- java中函数传参传递的是引用的拷贝

身边有些做Java开发的朋友,找工作时常常被考到一道关于字符串的题目。题目倒是很基础,然而根据朋友们事后的描述,有理由认为有的面试官自己都没有完全搞清楚这个问题。此外,在CSDN论坛中我也多次看到一些...
  • jiale0815
  • jiale0815
  • 2011年10月24日 09:40
  • 606

Web19.引用类型对象拷贝

问题: 1.引用类型有哪些?非引用类型有哪些? 2.如下代码输出什么?为什么 3.如下代码输出什么?为什么 4.如下代码输出什么?为什么 5.过滤如下数组,只保留正数...
  • SchillerYan
  • SchillerYan
  • 2017年07月06日 00:41
  • 131

JS 函数与作用域 引用类型对象拷贝

函数声明和函数表达式有什么区别 http://www.jianshu.com/p/888fded98527 JavaScript 中需要创建函数的话,有两种方法:函数声明、函数表达...
  • sinat_17775997
  • sinat_17775997
  • 2017年04月07日 14:52
  • 308
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java传递是引用的拷贝,既不是引用本身,更不是对象
举报原因:
原因补充:

(最多只允许输入30个字)