`
pengcqu
  • 浏览: 771264 次
  • 性别: 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 接口.pdf Java面向对象设计 - Java接口 什么是接口? Java中的接口定义了一个引用类型来创建抽象概念

    Java中的接口定义了一个引用类型来创建抽象概念。接口由类实现以提供概念的实现。 在Java 8之前,一个接口只能包含抽象方法。 Java 8允许接口具有实现的静态和默认方法。 接口通过抽象概念定义不相关类之间的关系...

    Java调优中一些概念的总结

    Java调优中一些概念的总结,如堆与栈,Java对象的大小,引用类型等

    Java基础知识点 - 内容比较全面

    1.1 Java中的引用概念 1.2 Java多线程相关知识 1.3 Java中的垃圾回收算法 1.4 Java IO流相关知识 1.5 JVM ClassLoader机制 1.6 Java中的synchronized使用 1.7 Java中的反射机制 1.8 Java中Heap与Stack的区别 ...

    Java基础:对象及引用祥解

    Java对象及引用是容易混淆却又必须掌握的基础知识,本章阐述Java对象和引用的概念,以及与其密切相关的参数传递。

    Java基础概念

    面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。 4. 多态性: 多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多...

    Java中强引用,软引用,弱引用概念解析

    主要介绍了Java中强引用,软引用,弱引用概念解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

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

    介绍java对象的创建、初始化、和引用。并分析一下JAVA中对象创建和初始化过程中涉及的相关概念问题。

    JAVA中传值与引用问题

    传值和传引用的问题一直是Java里争论的话题。与C++不同的,Java里面没有指针的概念,Java的设 计者巧妙的对指针的操作进行了管理。事实上,在懂C++的Java程序员眼中,Java到处都是精美绝伦的指 针。

    java深度历险

    JAVA引用类型 23 参考资料 27 JAVA泛型 28 类型擦除 28 实例分析 29 通配符与上下界 30 类型系统 31 开发自己的泛型类 32 最佳实践 32 参考资料 33 目录 3 JAVA注解 34 使用注解 34 开发注解 35 处理注解 35 实例...

    《Java 8 in Action》是一本关于 Java 编程语言的书籍,重点介绍了 Java 8 中引入的新特性和改进

    该书由 Mario Fusco、Alan Mycroft 和 Raoul-Gabriel Urma 合著,旨在帮助读者深入了解 Java 8,并掌握其中的关键...其他新特性: 简要介绍 Java 8 中引入的其他新特性,如接口的默认方法、方法引用、Optional 类型等。

    浅谈Java中的对象和对象引用

    在Java中,有一组名词经常一起出现,它们是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然。我们来一起了解一下对象和对象引用之间的区别和联系。  1....

    java技术学习文档.docx

    Java是一种面向对象的编程语言,它支持封装、继承和多态等面向对象的基本概念。Java具有静态类型检查机制,需要在编译时指定变量的类型。Java提供了基本数据类型,如int、double、float等,也支持引用数据类型,如类...

    javajava概要设计方案.doc

    1.2背景 随着信息检索技术的高速发展,做为信息检索代表的搜索引擎被广泛引用,如google, 百度等,在中国Internet高速发展过程中,越来越受关注,特别是google,百度在美国 上市后,搜索引擎备受关注。 a.系统的...

    Java.In.A.Nutshell 7th Covers Java11.pdf

    第二部分是对核心概念和API的引用,它解释了如何在Java环境中执行真正的编程工作。 快速掌握语言详细信息,包括Java 9-11更改 使用基本的Java语法学习面向对象的编程 探索泛型,枚举,注释和lambda表达式 了解面向...

    JAVA核心知识点整理.pdf

    Java中的多态性指在一个类实例化时,它可以引用多种不同类型的对象并自动调用适当的方法。这个特征让Java程序员能够更加灵活地编写代码,并且简化了许多任务。 Java中有两种多态性:静态多态性和动态多态性。静态多...

    这些是Java语法和基本概念的核心内容 熟悉和理解这些概念将为您编写和理解Java程序打下坚实基础

    1. **类和对象**:在Java中,一切皆对象。对象是类的实例化,而类是对象的抽象。通过定义类,您可以创建多个对象,并使用对象调用类中定义的属性和方法。 2. **变量**:在Java中,变量用于存储数据。在声明变量时,...

    java——让学员少走弯路

    Java中包的概念,类的说明符、方法的说明符、对象的销毁(JVM垃圾回收器的演示),Java中接口理解与掌握。 Java中内部类的理解、运用与掌握,Java中的异常处理。 Java的常用包,"=="和"equals"的用法,基本数据类型与...

    Java引用队列和虚引用实例分析

    主要介绍了Java引用队列和虚引用,结合实例形式分析了java引用队列和虚引用相关概念、原理与使用方法,需要的朋友可以参考下

    java最新面试题50道精讲

    9 、解释一下Java中的基本数据类型和引用数据类型的区别是什么? 10、解释一下Java中的垃圾回收机制是什么,以及如何配置垃圾回收器? 11、解释Java中的基本语法,包括变量、数据类型、控制结构等。 12、解释Java中...

Global site tag (gtag.js) - Google Analytics