第四章里面讨论到JAVA的方法参数到底是值传递还是引用传递, 作者认为JAVA使用的是值传递,而在Thinking in JAVA中关于传递貌似说的是引用传递(我有点记不清了,刚才也没翻到),在网上搜了一下,更是说法纷纭,让人越看越迷糊。没办法,只好自己想办法写例子来实验一下。
先构建一个Person类,有name和age两个字段
java 代码
- public class Person ...{
- String name;
- int age;
-
- public Person(String name,int age)...{
- this.name = name;
- this.age = age;
- }
-
- public int getAge() ...{
- return age;
- }
- public void setAge(int age) ...{
- this.age = age;
- }
- public String getName() ...{
- return name;
- }
- public void setName(String name) ...{
- this.name = name;
- }
-
- }
然后再设计一个personSwap方法,传入两个Person对象引用,先对这两个对象引用进行对象交换操作,然后再对两个对象中的name字段值进行交换操作。最后,在main中调用方法。最后生成的结果我都写在了注释中
java 代码
其结果很明显,java的对象引用传递并不是直接把引用传递进去的,否则,在离开personSwap方法后,a和b所指向的对象应该对调了才是。应该说,core java2所说的传递引用拷贝是正确的,换言之,JAVA是传值的,它把整一个对象传了进去,因此我们可以对该对象的字段进行操作,但是我们不能改变对象引用所指的对象。
分享到:
相关推荐
JAVA核心编程第七版Core Java2 7th CHM格式 第一部分,共两部分 第二部分链接:http://download.csdn.net/source/396344
《Core Java2 7th》是一本经典的Java编程教材,主要涵盖了Java语言的核心特性以及面向对象编程的基础知识。源码通常包含书中示例程序的实现,对于学习者来说是理解和实践书中理论的重要辅助资料。本压缩包可能包含了...
《Core Java2 7th Edition》是一本深受程序员喜爱的经典Java教程,由Cay S. Horstmann和Gary Cornell合著。这本书详细介绍了Java编程语言的核心概念和技术,旨在帮助读者深入理解和熟练掌握Java编程。 首先,书中...
《Core Java 7th》是Java编程领域的一本经典著作,专注于Java的核心概念和技术,尤其适合初学者和有一定基础的开发者。这本书详细介绍了Java 7版本的重要特性,为读者提供了全面而深入的理解。 1. **Java简介**:...
JAVA核心编程第七版Core Java2 7th 第二部分 共两部分 第一部分链接:http://download.csdn.net/source/396322
《Core Java2 7th 卷2:高级编程》是Java开发领域的一本经典著作,主要面向已经掌握Java基础的开发者,深入探讨了Java的高级特性和编程实践。该书的源码提供了丰富的实例,帮助读者更好地理解和应用书中介绍的概念。...
《Core Java 2 7th Edition》是Java编程领域中一本经典的教材,主要面向有一定编程基础的读者,深入讲解了Java语言的核心概念和技术。这本书分为两卷,Volume I 和 Volume II,分别涵盖不同的主题。 Volume I 侧重...
《Core Java 2 7th 卷1》是Java编程领域经典的教材之一,主要针对Java的基础部分进行深入讲解。源码通常包含书中示例程序,是理解书中理论知识的重要辅助资料。现在我们来详细探讨一下这个主题。 1. **Java语言基础...
这是英文版的,里面有代码,中文版卷一6个包,卷二7个包。
第一卷《Core Java 2 Volume I》主要关注基础概念和技术,包括: 1. **Java语言基础**:介绍Java语言的基本语法,如数据类型、变量、运算符、控制结构(if、switch、for、while)、方法和异常处理。 2. **类和对象**...
《CoreJAVA 7th Edithon》是Java编程领域的一本权威教材,专注于核心Java语言的深入解析。这本书第七版的发布,意味着它已经经过了多次更新和改进,以适应不断发展的Java技术生态。其中英文版和源代码的提供,为读者...
《Core Java 7th 卷2》是一本深入讲解Java编程的经典教材,主要面向有经验的程序员,旨在帮助他们深入理解Java的核心概念和技术。这本书涵盖了Java语言的高级特性,包括多线程、网络编程、I/O流、集合框架、反射、...
Prentice Hall PTR - Core Java 2 Volume I 7th Edithon.part1.rar 第一包,开发java非常值得一读的书籍,强烈推荐
该压缩包文件“core_java_2(7th)code.rar_core java 2”包含两部分内容:www.pudn.com.txt 和 v1。前者可能是一个链接或说明文件,后者则可能是一个代码目录或者代码示例的集合。这部分内容通常用于配合书籍的讲解,...
《Pro ASP.NET Core MVC 2 (7th) 中文版》是一本深入讲解ASP.NET Core MVC 2技术的专业书籍,适合C#开发者学习使用。该书涵盖了从基础到高级的多个方面,旨在帮助读者全面理解并掌握这个强大的Web开发框架。 ASP...
Prentice Hall PTR - Core Java 2 Volume I 7th Edithon.part1.rar 开发java非常值得一读的书籍,强烈推荐
电子书《Core Java 2 Volume II 7th Edition.chm 》经典