这道题目java面试比较多,求大神解答他的输出值。并讲个道理呗

程序首先会在这个String内存中寻找相同值的对象,也就是找到具有相同值的s1,然后s3引用了s1所引用的对象,也就是说s3与s1指向了同一个存储“Programming”字符串的地址。第三,看String的intern()方法描述就知道,该方法返回字符串对象的规范化表示形式,也就是返回字符串本身,所以true。
这道题目java面试比较多,求大神解答他的输出值。并讲个道理呗
输出值分别是:
false
true
true

这个“==”号,对于引用型变量来说,不只是要判断变量的值,更主要表示的是两个变量在堆中存储的地址是否相同。
第一,程序一开始在内存中创建了s1=“Programming”的对象,接着又来了个s2=new String("Programming"),注意,s2使用new操作符,所以系统会new一个对象出来,也就是再新建一个对象,所以s1和s2就不会在同一内存地址上。因此为false。记住了,凡是有new的对象,其创建出来的内存地址肯定不一样。
第二,“Program”+“ming”这两字符串相+,结果就是“Programming”,所以就相当于s3=“Programming”,而在创建s3对象时,程序首先会在这个String内存中寻找相同值的对象,也就是找到具有相同值的s1,然后s3引用了s1所引用的对象,也就是说s3与s1指向了同一个存储“Programming”字符串的地址。
第三,看String的intern()方法描述就知道,该方法返回字符串对象的规范化表示形式,也就是返回字符串本身,所以true。2016-11-29
mengvlog 阅读 7 次 更新于 2025-07-19 23:43:27 我来答关注问题0
  • 第二,“Program”+“ming”这两字符串相+,结果就是“Programming”,所以就相当于s3=“Programming”,而在创建s3对象时,程序首先会在这个String内存中寻找相同值的对象,也就是找到具有相同值的s1,然后s3引用了s1所引用的对象,也就是说s3与s1指向了同一个存储“Programming”字符串的地址。第三,...

  • Java 运行时环境(JRE)是将要执行 Java 程序的 Java 虚拟机。它同时也包含了执行 applet 需要的浏览器插件。Java 开发工具包 (JDK)是完整的 Java 软件开发包,包含了 JRE,编译器和其他的工具(比如:JavaDoc,Java 调试器),可以让开发者开发、编译、执行 Java 应用程序。4.是否可以在 static 环境中...

  • 1: D | javac 命令编译指定类和该类依赖的类。编译后的文件为二进制文件class2:C3:B4:C | IOException,runtimeException 编译时不要求强行处理,只在运行期发生。IOException编译时强行要求处理,继承自Exception5:B | Set无序队列,用get(index)游标无法获取6:C 7:A | 不使用关键字相当于...

  •  卖贫道的小火柴 求这几道java面试题答案

    1)一个short 16BIT的大小和一个48BIT的大小,凑成一个LONG(64)位置的大小的值,你可以用与的方式拿出想要的部分字段。2)主要考点两处,第一,HASHCODE和EQUALS方法的写法,都有标准写法的,要注意。第二(这个是亮点),STRING类有独特的特点,NEW出来以后不能改变(改变等于新NEW一份)那么为了提...

  •  阿暄生活 java应届生笔试题 java应届毕业生面试题

    Java应届毕业生面试题及答案概要 一、Java基础概念 Java垃圾回收机制 答案:Java的垃圾回收机制是一种自动内存管理机制,它负责自动回收不再使用的对象占用的内存空间,以减轻程序员的内存管理负担。static静态方法是否可以被子类重写 答案:不可以。static静态方法是属于类的,而不是属于对象的,因此不能被...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部