Java参数传递机制分析:值与引用Java认证考试

文章作者 100test 发表时间 2010:01:01 15:44:27
来源 100Test.Com百考试题网


  Java参数传递机制
  Java究竟是应该按照什么来传递参数?值?引用?还是两者皆有?
  其实,弄清楚这个问题得从概念入手。什么是按值传递,什么是按照参数传递。
  定义一个变量TestObject obj = new TestObject(); 然后把 obj 作为参数传递给一个方法。如果在这个方法中,只能改变obj指向的这个对象的内容,那就是“值传递”,传过去的值就是指向这个对象的指针。如果在这个方法中通过操作,使得返回后的obj指向另外一个对象(通过equal判断返回来的对象是否与原对象在内存中指向同一内存地址),那就是“引用传递”,传过去的是对这个指针变量的“引用”。来源:考的美女编辑们
  Java参数传递机制分析代码
  public class PersonT {
  public void change(Person p) {
  p.name = "mary".
  p.age = 20.
  }
  public void changeInt(int i) {
  i = 8.
  }
  public void change1(Person p){
  //新建对象,name为tpm,age为22
  p = new Person("tom",22).
  }
  public static void main(String[] args) {
  PersonT t = new PersonT().
  Person p = new Person("john", 18).
  Person p1 = p.
  System.out.println(p).
  //通过方法改变对象属性值
  t.change(p1).
  System.out.println(p1).
  System.out.println("传回来的值指向是否一致:" p.equals(p1)).
  //通过方法改变整数值
  int i = 10.
  System.out.println("i值为:" i).
  t.changeInt(i).
  System.out.println("i值为:" i).
  //新建一对象,改变对象值
  t.change1(p).
  System.out.println(p).
  }
  }
  输出结果为:
  姓名:john年龄:18
  姓名:mary年龄:20
  传回来的值指向是否一致:true
  i值为:10
  i值为:10
  姓名:mary
  年龄:20
  以上就是对Java参数传递机制的一些分析。

相关文章


一个Java程序员应该掌握的10项技能Java认证考试
Java编程语言的八大优点Java认证考试
Java输入数据流详解Java认证考试
Tomcat内存溢出的三种情况及解决办法分析Java认证考试
Java参数传递机制分析:值与引用Java认证考试
使用MyEclipse整合SSH模式:登陆范例Java认证考试
Java新型垃圾回收器G1深入探索Java认证考试
Tomcat全局日志配置介绍(Tomcat5.x)Java认证考试
Java加密和数字签名5数字证书Java认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛