`
pengcqu
  • 浏览: 774549 次
  • 性别: Icon_minigender_1
  • 来自: 未来
社区版块
存档分类
最新评论

Java中的引用概念

阅读更多

     Java对对象和基本的数据类型的处理是不一样的。和C语言一样,当把Java的基本数据类型(如int,char,double等)作为入口参数传给函数体的时候,传入的参数在函数体内部变成了局部变量,这个局部变量是输入参数的一个拷贝,所有的函数体内部的操作都是针对这个拷贝的操作,函数执行结束后,这个局部变量也就完成了它的使命,它影响不到作为输入参数的变量。这种方式的参数传递被称为"值传递"。而在Java中用对象的作为入口参数的传递则缺省为"引用传递",也就是说仅仅传递了对象的一个"引用",这个"引用"的概念同C语言中的指针引用是一样的。当函数体内部对输入变量改变时,实质上就是在对这个对象的直接操作。除了在函数传值的时候是"引用传递",在任何用"="向对象变量赋值的时候都是"引用传递"。

产生:引用总是在把对象作参数"传递"的过程中自动发生,不需要人为的产生,也不能人为的控制引用的产生。这个传递包括把对象作为函数的入口参数的情况,也包括用"="进行对象赋值的时候。


范围:只有局部的引用,没有局部的对象。引用在Java语言的体现就是变量,而变量在Java语言中是有范围的,可以是局部的,也可以是全局的。


生存期:程序只能控制引用的生存周期。对象的生存期是由Java控制。用"new Object()"语句生成一个新的对象,是在计算机的内存中声明一块区域存储对象,只有Java的垃圾收集器才能决定在适当的时候回收对象占用的内存。没有办法阻止对引用的改动。

Strong reference, soft reference, weak refeence, phantom reference

 

 

相关链接:

★  Java基础知识点汇总 

★ 【下载】经典常用算法 Java和C语言两种实现(含代码图例)

【下载】Java各种排序算法实现(含代码)

 

分享到:
评论

相关推荐

    Java中的基本类型和引用类型变量的区别

    Java 中的基本类型和引用类型变量是两个不同的概念,它们在内存分配、变量赋值和函数传递等方面有着本质的区别。 基本类型是 Java 中的八种基本类型,包括 byte、short、int、long、float、double、char 和 boolean...

    Java中对象与引用

    在Java编程中,深入理解对象与引用的概念对于掌握面向对象编程至关重要。本文将从以下几个方面详细解析对象与引用的基本概念及其相互间的关系。 #### 一、对象与引用的基础概念 **对象**: 在Java中,对象是类的一...

    Java的引用和函数参数传递

    通过上述分析,我们可以清楚地了解到Java中引用和函数参数传递的基本概念以及它们的具体应用。了解这些概念对于正确使用Java进行编程非常重要,尤其是在处理复杂的数据结构和对象交互时。希望本文能帮助读者更好地...

    java中传值与传引用

    虽然Java官方文档中并未明确指出有传引用这一概念,但在实际操作中,Java的行为类似于传引用,尤其是对于对象类型的参数。下面我们将详细探讨这两种传递方式。 首先,对于Java的基本数据类型(如int、char、byte、...

    Java对象及其引用的理解

    本文将深入探讨Java中的对象、引用以及它们之间的关系,并结合值传递的概念进行解析。 首先,我们需要理解什么是Java对象。在Java中,对象是类的实例。当我们使用`new`关键字创建一个类的实例时,就创建了一个对象...

    java中引用和c++中引用的区别.docx

    Java中的引用和C++中的引用在概念和使用上有显著的不同,这是由于两者设计哲学和语言特性的差异。首先,我们要明确一点,Java的引用更接近于C++的指针,而C++的引用则是一种完全不同的机制。 在Java中,引用可以...

    Java 方法引用

    方法引用的概念是随着Java 8的发布引入的,它是函数式编程特性的一部分,旨在简化代码并提高可读性。本篇文章将深入探讨Java方法引用的各个方面。 首先,我们要理解什么是函数式接口。在Java中,函数式接口是指只有...

    java中的指针,引用及对象的clone

    ### Java中的指针概念与引用解析 #### 一、引言 Java作为一种广泛使用的面向对象编程语言,在设计之初就摒弃了C/C++中的指针概念。然而,尽管Java没有传统意义上的指针,但仍然存在一种类似的概念——引用。本文将...

    浅谈java中的四个核心概念

    ### 浅谈Java中的四个核心概念 随着信息技术的飞速发展与互联网的普及,Java作为一门面向对象的、跨平台的编程语言,在软件开发领域占据了举足轻重的地位。Java不仅仅是一门语言,它更是一个庞大的技术平台。为了更...

    java中对象和对象引用的区别!

    在Java编程语言中,对象与对象引用是非常基础且重要的概念。理解它们之间的区别对于掌握Java面向对象编程至关重要。 #### 对象与引用定义 - **对象**:在Java中,对象是类的一个实例。每个对象都有自己的内存空间...

    java概念题汇总.pdf

    从给出的文件内容中提取知识点比较困难,因为内容看起来是随机抽取的字符,不过可以尝试从中提取一些关于Java语言的基础概念。 1. 关键字和修饰符:文档中出现了如public、private、static、final等关键字,这些都...

    Java中弱引用软引用虚引用及强引用的区别Java开发Ja

    在Java编程语言中,引用类型是理解内存管理的关键概念之一。强引用、弱引用、软引用和虚引用是四种不同的引用强度,它们在垃圾回收机制中扮演着不同的角色。了解这些引用类型对于优化内存使用、防止内存泄漏以及合理...

    Java的四种引用

    ### Java的四种引用详解 #### 一、引言 从JDK 1.2版本开始,Java引入了一种更为精细的引用类型管理机制,通过四种不同的引用类型:强引用、软...理解并熟练掌握这些概念对于提高Java程序性能和稳定性具有重要意义。

    java中对象创建、初始化、引用

    通过上述内容,我们可以了解到在Java中创建对象、初始化以及引用传递的基本流程和概念。对象是通过类创建出来的实例,而引用则是指向这些对象的指针。理解和掌握这些基本概念对于深入学习Java编程至关重要。此外,...

    java创建类和类的引用文档.doc

    Java 创建类和类的引用文档 本文档主要介绍了 Java 中的类和类的引用,通过一个学生信息系统的...本文档展示了 Java 中类的定义、实例化和引用,介绍了 Java 中的构造方法、Setter/Getter 方法、封装和多态等概念。

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

    本文将深入探讨Java中的参数传递机制,并通过具体的代码示例和内存分配图解来帮助读者理解按值传递和按引用传递的概念。 #### 二、按值传递的概念与特点 按值传递是指在函数或方法调用过程中,传递给函数或方法的...

    Java中类的组合概念

    在Java中,类的组合是一种重要的概念,它允许我们构建更复杂、更丰富的对象模型,能够反映现实世界中的复杂关系。通过类的组合,可以将基本类型、基本类型的类、以及自定义的类通过创建新的类进行组合,实现功能和...

    Java基础:对象及引用祥解

    #### 一、Java中的对象与引用概念 在Java编程语言中,理解和掌握对象和引用的基本概念是非常重要的。这两者虽然紧密相关,但也有本质的区别。 **对象**:在Java中,对象是类的一个实例。当我们创建一个类的新实例...

    Java是传值还是传址引用

    在Java中,引用是一种特殊的数据类型,用于存储对象在内存中的地址。当我们创建一个新的对象时,Java会在内存中分配一定的空间来存储该对象的数据,并返回一个指向该对象的引用。通过这个引用,我们可以访问和操作该...

Global site tag (gtag.js) - Google Analytics