馆档网 文档下载 文档下载导航
设为首页 | 加入收藏
搜索 请输入内容:  
 导航当前位置: 文档下载 > 所有分类 > IT/计算机 > 计算机软件及应用 > 杂谈JAVA
免费下载此文档侵权投诉

杂谈JAVA

谈论Object类,方法重载,重写toString方法,Hashcode等。

Java 杂谈(三)

这已经笔者写的第三篇Java杂记了,庆幸前两篇一直得到论坛朋友们的支持鼓励,还望大家继续指正不足之处。笔者也一直渴望通过这样方式清醒的自审,来寻找自己技术上的不足之处,希望和共同爱好Java的同仁们一起提高。

前两次分别讲述了关于jvm、jdk、jre、collection、classLoader和一些Design Pattern的自我理解。这次仍然不准备开始过渡到j2ee中,因为觉得还有一些琐碎的j2se的问题没有总结完毕。

1. 关于Object类理解

大家都知道Object是所有Java类的基类, 意味着所有的Java类都会继承了Object的11个方法。建议大家去看看Object的 11个成员函数的源代码,就会知道默认的实现方式。比如equals方法,默认实现就是用"=="来比较,即直接比较内存地址,返回true 或者 false。而toString()方法,返回的串组成方式是??

"getClass().getName() + "@" + Integer.toHexString(hashCode())"

其实不用我过多的解释,大家都能看懂这个串的组成。接下来再看看hashCode():

public native int hashCode();

由于是native方法,跟OS的处理方式相关,源代码里仅仅有一个声明罢了。我们有兴趣的话完全可以去深究它的hashCode到底是由OS怎么样产生 的呢?但笔者建议最重要的还是先记住使用它的几条原则吧!首先如果equals()方法相同的对象具有相通的hashCode,但equals ()对象不相通的时候并不保证hashCode()方法返回不同的整数。而且下一次运行同一个程序,同一个对象未必还是当初的那个hashCode() 哦。

其余的方法呢?nofigy()、notifyAll()、clone()、wait()都是native方法的,说明依赖于操作系统的实现。最后一个有 趣的方法是finalize(),类似C++的析构函数,签名是protected,证明只有继承扩展了才能使用,方法体是空的,默示什么也不做。它的作 用据笔者的了解仅仅是通知JVM此对象不再使用,随时可以被销毁,而实际的销毁权还是在于虚拟机手上。那么它真的什么也不做麽?未必,实际上如果是线程对 象它会导致在一定范围内该线程的优先级别提高,导致更快的被销毁来节约内存提高性能。其实从常理来说,我们也可以大概这样猜测出jvm做法的目的。

2. 关于重载hashCode()与Collection框架的关系

笔者曾经听一位搞Java培训多年的前辈说在他看来hashCode方法没有任何意义,仅仅是为了配合证明具有同样的hashCo


de会导致equals 方法相等而存在的。连有的前辈都犯这样的错误,其实说明它还是满容易被忽略的。那么hashCode()方法到底做什么用?

学过数据结构的课程大家都会知道有一种结构叫hash table,目的是通过给每个对象分配一个唯一的索引来提高查询的效率。那么Java也不会肆

第1页

免费下载Word文档免费下载:杂谈JAVA

(下载1-3页,共3页)

热门文档

相关文档

  • java学习杂谈

    java学习杂谈java学习杂谈隐藏>> Java 学习杂谈一 1. 关于动态加载机制—— 学习 Java 比 C++更容易理解 OOP 的思想,毕竟 C++还混合了不少面向过程的成分。...

  • Java学习杂谈

    杂谈JAVA 3页 1财富值 JAVA杂谈2 3页 2财富值 java杂谈 暂无评价 14页 5财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3...

  • Java杂谈

    杂谈JAVA 3页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 java杂谈 暂无评价 14页 5财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3...

  • java杂谈

    31页 1财富值 杂谈JAVA 3页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3页 2财富值...

  • Java杂谈

    杂谈JAVA 3页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 java杂谈 暂无评价 14页 5财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3...

  • JAVA杂谈5

    杂谈JAVA 3页 1财富值 java学习杂谈 31页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈4 暂无评价 3页 2财富值 JAVA杂谈6 暂无评价...

  • JAVA杂谈12

    杂谈JAVA 3页 1财富值 java学习杂谈 31页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3页 2...

  • JAVA杂谈7

    杂谈JAVA 3页 1财富值 java学习杂谈 31页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈4 暂无评价 3页 2...

  • JAVA杂谈4

    杂谈JAVA 3页 1财富值 java学习杂谈 31页 1财富值 JAVA杂谈2 3页 2财富值 JAVA杂谈9 4页 2财富值 JAVA杂谈5 3页 2财富值 JAVA杂谈6 暂无评价 3页 2...

站点地图 | 文档上传 | 侵权投诉 | 手机版
新浪认证  诚信网站  绿色网站  可信网站   非经营性网站备案
本站所有资源均来自互联网,本站只负责收集和整理,均不承担任何法律责任,如有侵权等其它行为请联系我们.
文档下载 Copyright 2013 doc.guandang.net All Rights Reserved.  email
返回顶部