public final class String extends Object
implements Serializable, Comparable<String>, CharSequence。
关于String类的实现Object 类
String 类 实现 Object 超类。
Object 类的实现的方法 :
当String 实现 Object 类的时候 ,String 重写了其部分方法。 如下:
1、String重写了Object 的 hashCode()方法。
Object类的hashCode.返回对象的内存地址经过处理后的结构,由于每个对象的内存地址都不一样,所以哈希码也不一样。
String类的hashCode.根据String类包含的字符串的内容,根据一种特殊算法返回哈希码,只要字符串内容相同,返回的哈希码也相同。
Object a = new Object();
Object b = new Object();
String c = "1213";
String d= "1213";
String e = new String("1213");
String f = new String("1213");
System.out.println("Oba:"+a.hashCode()+"||Obb:"+b.hashCode());
System.out.println("Stc:"+c.hashCode()+"||Std:"+d.hashCode());
System.out.println("Ste:"+e.hashCode()+"||Stf:"+f.hashCode());
result:
Oba:31168322||Obb:17225372
Stc:1509379||Std:1509379
Ste:1509379||Stf:1509379
2、String 重写了 Object的equals() 方法。
Object a = new Object();
Object b = new Object();
String c = "1213";
String d= "1213";
String e = new String("1213");
String f = new String("1213");
System.out.println(a.equals(b));
System.out.println(c.equals(d));
System.out.println(e.equals(f));
System.out.println(c.equals(f));
System.out.println(d.equals(f));
result:
false
true
true
true
true
3、String 重写了 Object的toString() 方法。
Object 类中的方法
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
String类中的方法
public String toString() {
return this;
}
我们可以看到String对象的toString()方法仅仅是输出了它的内容。
未完待续。。。。
转载于:https://my.oschina.net/u/3707187/blog/1554341
分享到:
相关推荐
基于java的开发源码-Calendar万年历.zip 基于java的开发源码-Calendar万年历.zip 基于java的开发源码-Calendar万年历.zip 基于java的开发源码-Calendar万年历.zip 基于java的开发源码-Calendar万年历.zip 基于java的...
基于java的开发源码-ICQ系统.zip 基于java的开发源码-ICQ系统.zip 基于java的开发源码-ICQ系统.zip 基于java的开发源码-ICQ系统.zip 基于java的开发源码-ICQ系统.zip 基于java的开发源码-ICQ系统.zip 基于java的开发...
基于java的开发源码-飞机订票.zip 基于java的开发源码-飞机订票.zip 基于java的开发源码-飞机订票.zip 基于java的开发源码-飞机订票.zip 基于java的开发源码-飞机订票.zip 基于java的开发源码-飞机订票.zip 基于java...
基于java的开发源码-网页浏览器.zip 基于java的开发源码-网页浏览器.zip 基于java的开发源码-网页浏览器.zip 基于java的开发源码-网页浏览器.zip 基于java的开发源码-网页浏览器.zip 基于java的开发源码-网页浏览器....
基于java的开发源码-github-Java-api.zip 基于java的开发源码-github-Java-api.zip 基于java的开发源码-github-Java-api.zip 基于java的开发源码-github-Java-api.zip 基于java的开发源码-github-Java-api.zip 基于...
基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的开发源码-PHPJava Bridge.zip 基于java的...
基于java的开发源码-Java EasyCms框架.zip 基于java的开发源码-Java EasyCms框架.zip 基于java的开发源码-Java EasyCms框架.zip 基于java的开发源码-Java EasyCms框架.zip 基于java的开发源码-Java EasyCms框架.zip ...
基于java的开发源码-Jease Java CMS.zip 基于java的开发源码-Jease Java CMS.zip 基于java的开发源码-Jease Java CMS.zip 基于java的开发源码-Jease Java CMS.zip 基于java的开发源码-Jease Java CMS.zip 基于java的...
这个压缩包 "selenium-java-2.47.1.zip" 包含了Selenium的Java版本,具体是2.47.1的更新,发布于2015年8月。这个版本在当时是一个稳定且广泛使用的版本,它提供了丰富的API,支持多种浏览器,并且可以与各种测试框架...
Apache Commons Lang是Java编程语言中的一个实用工具库,它提供了许多在标准Java API中未涵盖的高级字符串和对象处理功能。这个"commons-lang-2.4.rar"压缩包包含了两个子文件,分别是"commons-lang-2.4-bin.zip"和...
基于java的开发源码-贴心Java盒子.zip 基于java的开发源码-贴心Java盒子.zip 基于java的开发源码-贴心Java盒子.zip 基于java的开发源码-贴心Java盒子.zip 基于java的开发源码-贴心Java盒子.zip 基于java的开发源码-...
基于java的开发源码-软件度量源码.zip 基于java的开发源码-软件度量源码.zip 基于java的开发源码-软件度量源码.zip 基于java的开发源码-软件度量源码.zip 基于java的开发源码-软件度量源码.zip 基于java的开发源码-...
基于java的开发源码-Spring4GWT.zip 基于java的开发源码-Spring4GWT.zip 基于java的开发源码-Spring4GWT.zip 基于java的开发源码-Spring4GWT.zip 基于java的开发源码-Spring4GWT.zip 基于java的开发源码-Spring4GWT....
基于java的开发源码-电子相册源码.zip 基于java的开发源码-电子相册源码.zip 基于java的开发源码-电子相册源码.zip 基于java的开发源码-电子相册源码.zip 基于java的开发源码-电子相册源码.zip 基于java的开发源码-...
基于java的开发源码-超市购物系统.zip 基于java的开发源码-超市购物系统.zip 基于java的开发源码-超市购物系统.zip 基于java的开发源码-超市购物系统.zip 基于java的开发源码-超市购物系统.zip 基于java的开发源码-...
基于java的开发源码-加密库 JSDSI.zip 基于java的开发源码-加密库 JSDSI.zip 基于java的开发源码-加密库 JSDSI.zip 基于java的开发源码-加密库 JSDSI.zip 基于java的开发源码-加密库 JSDSI.zip 基于java的开发源码-...
基于java的开发源码-PList类库 Blister.zip 基于java的开发源码-PList类库 Blister.zip 基于java的开发源码-PList类库 Blister.zip 基于java的开发源码-PList类库 Blister.zip 基于java的开发源码-PList类库 Blister...
基于java的开发源码-EPUB类库 Epublib.zip 基于java的开发源码-EPUB类库 Epublib.zip 基于java的开发源码-EPUB类库 Epublib.zip 基于java的开发源码-EPUB类库 Epublib.zip 基于java的开发源码-EPUB类库 Epublib.zip ...
基于java的开发源码-命令行进度条 JCmdLineProgess.zip 基于java的开发源码-命令行进度条 JCmdLineProgess.zip 基于java的开发源码-命令行进度条 JCmdLineProgess.zip 基于java的开发源码-命令行进度条 ...
commons-lang-2.6.jar包commons-lang-2.6.jar包commons-lang-2.6.jar包commons-lang-2.6.jar包commons-lang-2.6.jar包加源码