黑马程序员_关于object类的学习
来源:互联网 发布:小猪cms生活通o2o系统 编辑:程序博客网 时间:2024/06/05 15:42
----------------------- android培训、java培训、java学习型技术博客、期待与您交流! ---------------------
Java中所有类(包括用户自己定义的类)都自动继承Object类,即Object类是所有类的父类。
Object中常用方法:
public boolean equals(Object obj)
比较当前对象与obj是否为同一对象,返回值:ture/false
public String toString()
返回当前对象的字符串表达形式
public native int hashCode();
返回对象的Hash码。Hash码是标志对象的唯一值,Hash码相同的对象是同一对象
protected void finalize()throws Throwable
对象销毁时被调用
以下三个函数用于控制线程
public final native void notify();public final native void notifyAll();public final native void wait();
native型方法指由C++语言编写的方法,Java解释器对其进行转义后才执行。
“==”与equals()
"==" 一般用于基本数据类型比较。若用作两个引用对象比较,仅当引用变量引用同一个对象时,才返回true,否则false。
void EqualCompare()
{
String s1 = new String("Hello");
String s2 = new String("Hello");
String s3 = "Hello";
String s4 = "Hello"; //未使用new,s4引用既存的对象(编译器创建对象之前先进行检测"Hello"是否已经存
在,若存在,则返回原对象的引用)
System.out.println(s1.equals(s2)); // true x1行
System.out.println(s1 ==s2); // false 两变量引用不同对象
System.out.println(s3.equals(s4)); //true 两变量引用相同对象
System.out.println(s3 ==s4); // true 两变量引用相同对象
}
比较对象时,一般用equal()方法。
Object类方法定义:public boolean equals(Object obj){ return (this == obj);}
不同的类可方便的对该对象进行覆盖。String类就覆盖了Object类的equals()方法,所以x1行输出true.
a==b 如果a,b引用同一对象,则返回true;
a.equals(b) 如果a对象内容和b对象内容相同,则返回true
如果未重载equals()方法的类对象使用该方法与另一个对象进行比较,则调用Object的equals()方法,仍然是对象的比较,返回值为false。
关于object 类传智播客老师的通俗解释是:1 object:是所有对象的直接后者的间接父类,是类中的上帝。
2 该类中的定义的肯定是所有对象都具有的功能。
3 object 类是否有提供了对 对像的相同的方法。如果自定义类中有相同的功能,没有必要定义,只要延续父类中的功能即可,建立自己可有的功能,这就是覆盖在里面的应用。
----------------------- android培训、java培训、java学习型技术博客、期待与您交流! ---------------------- 黑马程序员_关于object类的学习
- 黑马程序员_关于String的学习
- 黑马程序员_关于集合的学习
- 黑马程序员_关于io的学习
- 黑马程序员_关于System.Object
- 黑马程序员_学习记录08:多态、Object类
- 黑马程序员:Object类:超父类的学习
- 黑马程序员_笔迹九_关于Object类和包装类
- 黑马程序员_抽象类的学习
- 黑马程序员_类的学习
- 黑马程序员_关于java异常机制的学习
- 黑马程序员_关于java 包的学习
- 黑马程序员_关于java GUI的学习
- 黑马程序员_关于网络编程的学习
- 黑马程序员_笔迹十一_关于多线程学习
- 黑马程序员_关于增强一个类的方法
- 黑马程序员_关于JAVA常见类的一些总结
- 黑马程序员_关于类本质的小结
- 解决在thinkpad E420 装ubuntu 无法输入中文的问题
- C语言异常处理机制, setjmp() and longjmp()
- 通过ASP与Access数据库建立连接
- android ndk 编程
- 关于Internet Explorer 6(IE6)不支持CSS中!important属性
- 黑马程序员_关于object类的学习
- linux(fedora 15) 下常用软件安装
- BlackBerry NFC API target.getUri(Target.ISO_14443_3)返回的结果
- s3c2440启动过程详解
- 访问者模式(python)
- 布隆过滤
- 查看环境变量
- 2440init.s分析
- 关于使用BJX-LINK-001调试stm8s系列主控问题