`

Java值传递的两个例子

阅读更多

http://www.iteye.com/topic/4189

代码1:

import java.awt.Point;

public final class ParameterPassingTest {
	// 为基本类型参数重新赋值
	public static void change(int i) {
		i = 5;
	}

	// 为引用型参数重新赋值
	// t指向新值,旧值没有任何变化。
	public static void change(Point t) {
		t = new Point(9, 0);
	}

	// 改变引用类型参数所指向对象的属性值
	// 改变了传过来的值的值。
	public static void addX(Point pt) {
		pt.x += 20;
	}

	public static void main(String[] args) {
		Point t = new Point();

		// 为基本类型参数重新赋值
		change(t.x);
		System.out.println("change(t.x):" + t.x);

		// 为引用型参数重新赋值
		change(t);
		System.out.println("change(t):" + t.x);

		// 改变引用类型参数所指向对象的属性值
		addX(t);
		System.out.println("addX(t):" + t.x);
	}
}

结果:

change(t.x):0
change(t):0
add(t):20

  代码2:

 

public class PassByValue2 {

	public static void main(String[] args); {
		String b = "hi";
		String a = "hello";
		a = b;
		b = "love";
		System.out.println("a: " + a);;
	}
}

  结果:

a=hi

代码3:

int a,b;
a = b;

eclipse报错:The local variable b may not have been initialized

分享到:
评论

相关推荐

    java 值传递和引用传递的比较

    在Java编程语言中,了解值传递和引用传递的概念至关重要,因为它们直接影响到函数参数的处理方式。下面将详细探讨这两个概念及其区别。 首先,我们来理解什么是值传递。在Java中,基本数据类型(如int、double、...

    Java:按值传递还是按引用传递详细解说

    为了更直观地理解按引用传递的过程,下面通过一个例子并结合内存分配示意图来说明这一过程。 1. **初始化状态**:创建了一个`A`类型的实例。 - **内存分配示意图**:此时内存中只有一个`A`类型的实例,其`age`属性...

    java值传递与引用传递

    在Java编程语言中,函数参数的传递方式有两种:值传递和引用传递。理解这两种机制对于编写高效、无误的代码至关重要。以下是对这两种传递方式的详细解析。 首先,值传递是指函数调用时,实际参数的值被复制一份传给...

    Java面向对象值传递和引用传递

    Java 面向对象值传递和引用传递 Java 面向对象编程中,参数传递是非常重要的一个概念。参数传递有两种方式:值传递和引用传递。了解这两种方式的区别是非常重要的,因为它们对程序的执行结果产生了很大的影响。 值...

    java值传递和引用传递详解

    Java中的参数传递方式主要有两种:值传递和引用传递。理解这两种机制是编程中至关重要的,因为它们直接影响到函数内部如何改变或操作传入的数据。 **值传递**在Java中是基本数据类型(如int, double, char等)的...

    java html 值传递

    在编程领域,Java和HTML是两种非常重要的技术。Java是一种多用途、面向对象的编程语言,而HTML(超文本标记语言)则是用于构建网页...希望这个简单的例子能帮助你理解这一过程,并激发你深入探索Java Web开发的兴趣。

    Java中的值传递和引用传递

    当一个变量为一个参数传入方法内部的时候,会有两种不同的传递方式:值传递和引用传递。  值传递的特点:不管方法内部对传进去的参数作任何改变,也不会影响方法外部的变量的值  引用传递的特点:方法内部对传...

    关于java的传递方式问题

    Java支持两种基本的数据传递方式:值传递和引用传递。本文将详细介绍这两种传递方式,并通过具体的例子来说明它们的区别和应用。 #### 二、Java中的数据类型 Java中的数据类型分为两大类:原始类型(Primitive ...

    值传递和引用传递

    在这个例子中,`x` 的值为 1,调用 `test(x)` 方法后,虽然形参 `a` 的值被修改为 2,但是实参 `x` 的值并没有发生改变,仍然为 1。 #### 三、引用传递 **引用传递**则是指在函数或方法调用时,传递的是实际参数的...

    Java中的值传递和引用传递实例介绍

    Java总是采用值传递的方式来传递参数,但这并不意味着不能通过参数来改变对象的状态。我们将详细探讨Java中的值传递和引用传递的概念,以及它们之间的区别。 首先,值传递是Java中最基本的参数传递方式。当一个变量...

    JNI中C和Java参数传递详细例子

    ### JNI中C和Java参数传递详解 #### 一、引言 Java Native Interface (JNI) 是Java平台标准的一部分,用于让Java代码与其他语言写的代码进行交互。本文将深入探讨在JNI环境中,C/C++和Java之间如何进行参数传递,...

    java 之方法调用 方法传参 值传递还是引用传递字节码

    本文将深入探讨Java中的方法调用、值传递与引用传递,并通过字节码分析来进一步理解这些概念。 首先,我们来看方法调用。在Java中,方法是一组完成特定任务的代码块,可以通过方法名来调用执行。方法调用的基本语法...

    java中的值传递和引用传递[汇编].pdf

    Java编程语言中,参数传递的方式主要有两种:值传递和引用传递。然而,由于Java不支持指针,所以严格意义上的引用传递并不存在。但是,通过对象的传递,Java实现了类似引用传递的效果。 值传递是Java中基本类型的...

    Java参数传递的经典示例

    在Java中,参数传递主要有两种方式:值传递(Value Passing)和引用传递(Reference Passing)。虽然Java官方文档并未明确提及引用传递,但Java中的对象实际上是以引用的方式进行传递。 首先,我们来看基本类型(如...

    Java中的值传递和引用传递的区别.doc

    根据传递的数据类型不同,Java中有两种主要的参数传递方式:值传递(Value Passing)和引用传递(Reference Passing)。这两种方式决定了函数内部如何处理传入的参数,进而影响到函数外部的原始数据是否会发生变化。...

    java参数传递 java 参数.doc

    Java 参数传递机制是编程中的重要概念,尤其是在Java中,它涉及到“值传递”和“引用传递”的理解。这里我们将深入探讨这两个概念,并结合给定的示例代码进行解析。 首先,我们看“值传递”。在Java中,基本类型...

    Java引用变量传递诡异之处

    通过以上两个例子,我们可以总结出以下几点: 1. **引用类型参数传递**:无论何时将引用类型作为参数传递给方法,传递的都是该引用的一个副本。因此,在方法内部对该引用的重新赋值不会影响到原始引用。 2. **对象...

Global site tag (gtag.js) - Google Analytics