Java中传值和传址的问题

原创 2006年06月08日 16:46:00

Java中取消了指针,不可能像C一样直接操作内存,但是由于对象的动态联编性,复杂数据类型作参数相当于指针的使用,即地址传递,而基本数据类型作参数传递则相当于值传递.看下面程序:

class swapByValue
{
 int x,y;
 public swapByValue (int x, int y)
 { 
  this.x=x;
  this.y=y; 
 }
 public void swap(int x,int y)
 {
  int z;
  z=x; x=y; y=z;
  System.out.println(x);
  System.out.println(y);
  this.x=x;  //没有这两句,结果就不能成功,因为int是基本数据类型,传的是值
  this.y=y;
 }
 public static void main(String args[])
 {
  swapByValue s= new swapByValue (3,4);
  Transcript.println("Before swap: x= "+s.x+" y= "+s.y);
  s.swap(s.x,s.y);
  Transcript.println("After swap: x= "+s.x+" y= "+s.y);}
 }

传值和传址的区别

之前对于参数的传值和传址一直不大明白,大概的意思知道,那么他们两个有什么区别,还有就是具体是怎样的参数传递还是不太懂。所以就上网搜了一些关于传值和传址的讲解。       先来简单说一下 传值:把...
  • zx15732623832
  • zx15732623832
  • 2016年06月03日 17:23
  • 1047

解析PHP中 传值、传引用、传地址之区别

源自:http://www.wei-bolg.com/?p=152   PHP传值和传引用、传地址的区别: 传值: 是把实参的值赋值给行参,相当于复制一块同样的空间 那么对行参的...
  • u010409284
  • u010409284
  • 2013年08月21日 11:16
  • 829

VB中的传值和传址,形式参数与实际参数

在vb中调用函数或过程,传递参数都有两种方式——传址和传值。其中VB默认是以传址方式传递参数。     一个是Byval,一个是ByRef,前面的表示传值,后面的则表示传址。传值使得子程序调用实际...
  • ningmengbaby
  • ningmengbaby
  • 2016年11月13日 11:57
  • 1602

java 中的 传值 与 传址

java 中的 传值 与 传址在一些面试企业的过程当中 ,很多人看重于基础的考核。其中,传值与传地址 就是一种基础能力考核的关键,这里我总结了 5种很典型的例子 ,最后做了一个总结 首先是8种基本数据...
  • sinat_30162657
  • sinat_30162657
  • 2016年07月15日 00:19
  • 2117

指针参数的传值与传址

使用传址的方式才能使针对函数参数所做的处理在函数调用结束后仍然有效,指针参数也是如此。 有如下代码: #include void test(char *p) { printf("i...
  • Genuineness
  • Genuineness
  • 2012年07月09日 23:06
  • 1102

JAVA中的引用到底是传值还是传址?

JAVA中的引用到底是传值还是传址? JAVA中除了8种基本类型外,其它的类型是引用类型,像STRING,数组,文件流等。引用变量在JAVA中是一个存储对象在内存中的地址的变...
  • lioncode
  • lioncode
  • 2013年02月28日 21:30
  • 5544

C语言教学--函数之间传值和传址的区别

函数之间参数的传递, 对于一般的概念(函数的定义,函数返回值,函数的调用等)就不在这里重述了, 对于初学者总是不好理解, 其实这和我们中学学习的f(x,y)=x2+y2-1是一样的, 我们可以把x,和...
  • lovesummerforever
  • lovesummerforever
  • 2013年11月14日 13:56
  • 11813

C++中传值、传址与传引用的区别

1、参数传递的概念  所谓参数传递就是用函数调用所给出的实参(实际参数)向函数定义所给出的形参(形式参数)设置初始值的过程。 在c++中,调用函数时有三种参数传递方式,分别为: (1)传值调用;...
  • Silence723
  • Silence723
  • 2016年07月19日 10:07
  • 1428

PHP传值、引用和传址的区别

实参(被调)、行参(主调) 函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。  ...
  • damys
  • damys
  • 2014年03月14日 16:42
  • 2554

JavaScript中传值和传址的概念

传值:         当一个数据是通过值被操作的,那么,所关系到的是数据的值。在赋值过程中,对实际的值做一个拷贝,这份拷贝被存储到一个变量、对象属性或者数组元素中。拷贝的值和原来的值是分别存储...
  • StarRexStar
  • StarRexStar
  • 2012年02月10日 16:04
  • 658
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java中传值和传址的问题
举报原因:
原因补充:

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