当前位置:  技术问答>java相关

关于Thinking in java这本书中的问题!高手进来!

    来源: 互联网  发布时间:2015-06-13

    本文导语:  最近开始看thinking in java。 在thinking in java中第49页,发现这样的问题。 为什么以下的结果是false? class Value{   int i; } public class EqualsMethod2{ public static void main(String[] args){ Value v1 = new Value(); Value v2 = ...

最近开始看thinking in java。
在thinking in java中第49页,发现这样的问题。
为什么以下的结果是false?

class Value{
  int i;
}

public class EqualsMethod2{

public static void main(String[] args){
Value v1 = new Value();
Value v2 = new Value();
v1.i=v2.i=100;
System.out.println(v1.equals(v2));
}

}

还有,句柄指的是什么??

|
因为class Value的父类是java.lang.Object。而class Value没有重载方法
equals(),所以eauals()实现的是Object的缺省如下:
public boolean equals(Object obj) {
return (this == obj);
    }
正是句柄的比较。

|
当然,v1.equals(v2)比较两个对象引用
而(v1.i).equals(v2.i)比较两个值;

句柄是翻译的问题,我觉得referance翻译成引用更好

|
引用,你就当是内存地址啦。
v1,v2的内存地址你认为一样么,当equals默认比较内存地址时,当然返回
false了。

|
v1和v2是2个不同的对象,当然不同了!

|
v1和v2这两个对象是不同的,因为内存地址是不同的,而v1.equals(v2)比较的是两个对象引用,所以结果是false
我理解的句柄是引用

|
v1,v2内存地址不同。

|
==和equals是经常让人搞错的,就看equals有没有重载。很多时候要分别试一下。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 早上看到China-Pub已经有<Thinking In C++>英文第2版卖了,而且<Thinking In Java 2E>也在预告了,强烈期待中......
  • 从哪能下载Thinking in java 一书中的程序代码?
  • 考SCJP275一定要看<Thinking In Java>吗?
  • Thinking In Java 的第一个程序问题
  • thinking in java 中提到的一本书
  • 请大家评价一下Thinking in Java第二版(中文)这本书如何,是否适合JAVA初学者?
  • THINKING IN JAVA 第二版(中文)(经典之作品出版了)
  • 我在Thinking in Java中遇到的Jni问题!
  • thinking in java se基本看完了,想搞jsp,请推荐经典书
  • 关于<<thinking in java>>中的源代码执行的问题
  • 《Thinking in Java》VS《The Java Programming Language》
  • 谁那有《Thinking in Java》的英文版(或哪有下载)GIVE ME啊!
  • 谁有《thinking in java》中的程序代码?重重有赏
  • 长沙哪里买到 thinking in java ?
  • where is thinking in java to download??
  • java in thinking 第一版翻译的真的不能读么?
  • 请问哪里可以下载thinking in java 中的源代码?
  • 急需《thinking in java》电子书!!!
  • 关于《Thinking in Java》
  • 看完了core java1和thinking in java,看什么?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3