Java中不同对象调用该实例方法返回值是同一个地址空间吗?

结论

  • 不一定。
  • 基本类型返回的是值 引用数据类型返回的是引用地址(是否同一个引用看是否用到常量池)
  • '==' 基本类型比较的是两者的值是否相同 而引用类型比较两者的是引用地址是否相同

基本类型

返回的值相同 '=='就为true

public int m1(){
	return -1;//obj.m1()==obj.m2() true
}
public double m2(){
	return 2.2;//obj.m2()==obj.m2() true
}

引用类型

返回的引用地址相同 '=='就是true

public String m3(){
	return "m3";//obj.m3()==obj.m3() true
	//"m3"在常量池中 所以返回的引用地址相同(指向常量池中的地址)
}
public String m4(){
	return new String("m4");//odj.m4()==obj.m4() false
	//new实例会在堆内存中开辟内存空间 即返回的引用地址不同(返回堆中的地址) 所以false
}
public Integer m5(){
	return new Integer(1);//obj.m5()==obj.m5() false
}
public Integer m6(){
	return  66;//常量池[-128,127]不同对象调用返回的都是相同的引用
}
public Integer m7(){
	return 777;//超出常量池 范围 不相同
}


原文链接:https://www.cnblogs.com/odfive/p/17352810.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中不同对象调用该实例方法返回值是同一个地址空间吗? - Python技术站

(0)
上一篇 2023年4月25日
下一篇 2023年4月25日

相关文章

  • java构造方法的作用总结

    下面为您详细讲解“java构造方法的作用总结”的完整攻略。 什么是java构造方法 Java中的构造方法是一种特殊类型的方法,它允许我们在创建对象时执行代码来初始化对象。构造方法通常与类的名称相同,不包含返回类型,并且可以有参数。 java构造方法的作用 初始化实例变量 构造方法用于初始化一个对象的实例变量,它可以完成对象的初始化工作。在Java当中,对象的…

    Java 2023年5月26日
    00
  • springBoot2.X配置全局捕获异常的操作

    本文主要介绍如何使用 Spring Boot 2.x 配置全局的异常处理器。具体的步骤如下: 步骤一:新建异常处理器 首先,我们需要新建一个异常处理器类 GlobalExceptionHandler,该类需要实现 ErrorController 接口和 @RestControllerAdvice 注解。代码如下: @RestControllerAdvice …

    Java 2023年5月27日
    00
  • struts2 中文乱码的解决办法分享

    下面我将详细讲解如何解决 Struts2 中文乱码问题。 问题描述 在 Struts2 应用程序中,当提交的表单数据中包含中文字符时,服务器端收到的请求参数中文会出现乱码,给用户带来了不好的使用体验。 解决思路 解决 Struts2 中文乱码问题,可以通过以下两种方式实现: 在 web.xml 文件中配置 Filter,拦截所有请求,对请求参数进行编码。 在…

    Java 2023年5月20日
    00
  • Mybatis持久层框架入门之CRUD实例代码详解

    “Mybatis持久层框架入门之CRUD实例代码详解”是一篇介绍Mybatis CRUD操作的文章,下面我会详细讲解它的内容和相关知识点。 什么是Mybatis持久层框架 Mybatis是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。Mybatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的工作。Mybatis 可以使…

    Java 2023年5月20日
    00
  • Android实现IOS相机滑动控件

    下面我会详细讲解在Android平台上实现类似IOS相机滑动控件的完整攻略。实现该控件需要涉及到自定义控件的开发和手势识别等技能。 一、基本原理 自定义滑动控件:为了实现类似IOS相机的滑动效果,需要将Android的默认控件ScrollView转换为自定义控件,在该自定义控件中重写touch事件以及scroll事件,实现手势识别和滑动效果。 手势识别:在自…

    Java 2023年5月26日
    00
  • java.util.NoSuchElementException原因及两种解决方法

    当使用Scanner类从标准输入或文件读取数据时,可能会遇到java.util.NoSuchElementException异常。这个异常被抛出,当Scanner使用next()、nextInt()或nextLine()方法时,输入流中没有更多的输入时抛出。这个异常可能由以下原因引起: Scanner对象没有被正确地初始化或已关闭。如果Scanner对象已经…

    Java 2023年5月20日
    00
  • Java处理日期时间的方法汇总

    标题 Java处理日期时间的方法汇总 介绍 在Java应用程序开发中,经常需要对日期和时间进行处理和运算,比如计算两个日期之间的天数,或者将日期格式化为特定的字符串等等。本文将介绍Java中处理日期时间的方法汇总。 获取当前日期时间 获取当前时间的 Date 对象可以使用无参构造函数,也可以使用 System.currentTimeMillis 方法。 Da…

    Java 2023年5月20日
    00
  • java.lang.NullPointerException 如何处理空指针异常的实现

    处理空指针异常是 Java 应用程序开发中的常见问题。”java.lang.NullPointerException”是一个异常类型,表示代码试图访问一个空对象或者空引用。以下是处理空指针异常的完整攻略: 1. 异常处理 在 Java 中,对于空指针异常,我们可以使用try-catch语句来捕获并处理异常。做法是在 try 块中写入可能会出现异常的代码,而在…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部