JAVA语言中引用和调用有区别吗

区别是定义不同。引用是说变量保存内容的,变量保存了一堆内存数据,我们把变量叫做对数据的引用。调用指的是编写代码的时候使用定义好的代码块(函数/方法),这个叫做调用方法或调用函数,通常来说引用是在栈里建立的内存,该内存的内容是堆里的对象的地址。

两者定义

不要因为后面都有个”用”字就以为他俩是类似的东西,实际上这两个词完全没有关系。引用是说变量保存内容的,变量保存了一堆内存数据,我们把变量叫做对数据的引用。调用指的是编写代码的时候使用定义好的代码块(函数/方法),这个叫做调用方法或调用函数。

通常来说引用是在栈里建立的内存,该内存的内容是堆里的对象的地址。而调用值得是执行某个函数, 对应的是cpu 指令。两者是完全不同的东西。另外引用还有一种常见a引用了b,这时引用值得是按使用了b的东西,也可能使用调用了b的方法。也可能是把b作为自己的成员或者使用了b的成员等等。

强引用,软引用,弱引用,虚引用。不同的引用类型主要体现在GC上。

强引用

如果一个对象具有强引用,它就不会被垃圾回收器回收。即使当前内存空间不足,JVM也不会回收它,而是抛出 OutOfMemoryError 错误,使程序异常终止。如果想中断强引用和某个对象之间的关联,可以显式地将引用赋值为null,这样一来的话,JVM在合适的时间就会回收该对象。

软引用

在使用软引用时,如果内存的空间足够,软引用就能继续被使用,而不会被垃圾回收器回收,只有在内存不足时,软引用才会被垃圾回收器回收。

弱引用

具有弱引用的对象拥有的生命周期更短暂。因为当 JVM 进行垃圾回收,一旦发现弱引用对象,无论当前内存空间是否充足,都会将弱引用回收。不过由于垃圾回收器是一个优先级较低的线程,所以并不一定能迅速发现弱引用对象。

虚引用

顾名思义,就是形同虚设,如果一个对象仅持有虚引用,那么它相当于没有引用,在任何时候都可能被垃圾回收器回收。

延伸阅读:

什么是Java

Java具有大部分编程语言所共有的一些特征,被特意设计用于互联网的分布式环境。Java具有类似于C++语言的”形式和感觉”,但它要比C++语言更易于使用,而且在编程时彻底采用了一种”以对象为导向”的方式。使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。

Java是Sun微系统公司在1995年推出的,推出之后马上给互联网的交互式应用带来了新面貌。最常用的两种互联网浏览器软件中都包括一个Java虚拟机。几乎所有的操作系统中都增添了Java编译程序。

使用Java编写的应用程序,既可以在一台单独的电脑上运行,也可以被分布在一个网络的服务器端和客户端运行。另外,Java还可以被用来编写容量很小的应用程序模块或者applet,做为网页的一部分使用。applet可使网页使用者和网页之间进行交互式操作。

文章标题:JAVA语言中引用和调用有区别吗,发布者:小编,转载请注明出处:https://worktile.com/kb/p/37811

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编的头像小编
上一篇 2023年2月12日 下午4:26
下一篇 2023年2月12日 下午4:29

相关推荐

  • 企业费用管理平台大盘点:10款优选

    本文介绍了以下工具:合思、明道云、SAP Concur、管家婆、Spendesk、用友U8、Yokoy、金蝶K/3、Zoho Expense、AIrbase。 许多企业在繁琐的报销流程中消耗了大量人力和时间,效率低下,数据不准确,财务人员和员工都苦不堪言。本文整理了2024年最值得推荐的10款费用…

    2024年7月21日
    100
  • 差旅报销平台推荐:9款专业工具

    本文将介绍9款差旅报销平台:合思、Expensify、用友U8、TravelPerk、SAP Concur、金蝶K/3、Navan、管家婆、Happay。 差旅报销一直是企业管理中的一个大难题。繁琐的流程、复杂的审批、频繁的错误和时间浪费,这些都让财务和员工头疼不已。本文将介绍2024年最靠谱的9款…

    2024年7月21日
    000
  •  10款主流报销系统推荐:企业选型必看指南

    本文将介绍10款国内外报销系统:合思、Concur、用友U8、明道云、Zoho Expense、Expensify、Spendesk、NetSuite、Emburse Chrome River、AIrbase。 在选择报销系统时,很多企业常常面临一个棘手的问题:市场上有太多选择,如何才能找到最适合自…

    2024年7月20日
    200
  • 企业必备的9款财务报销管理软件

    本文将介绍9款财务报销系统:合思、Concur、用友U8、金蝶云星空、明道云、管家婆、Zoho Expense、简道云、Spendesk。

    2024年7月20日
    000
  • 企业工时记录软件的10大选择

    国内外主流的10款工时计算软件对比:PingCode、Worktile、Tita、易企秀、奇鱼、Teambition、Timely、Toggl Track、RescueTime、ClickUp。 在忙碌的工作中,记录和管理工时常常是令人头疼的问题。工时记录软件的选择不仅能帮你省时省力,还能大幅提高团…

    2024年7月19日
    800

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部