黑马程序员_关于object类的学习
2011-10-29 12:56
267 查看
----------------------- 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学习型技术博客、期待与您交流! ---------------------
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学习型技术博客、期待与您交流! ---------------------
相关文章推荐
- 黑马程序员__关于学习Java基础加强的总结_2
- 黑马程序员__关于学习File类对文件目录操作的总结
- 黑马程序员学习笔记——关于BufferedInputStream
- 黑马程序员 关于学习多态时的一些理解
- 黑马程序员—关于黑马,关于学习,关于求职,关于工作
- 黑马程序员之C# 学习笔记:关于类的修饰符
- 黑马程序员之C#学习笔记:关于继承
- 黑马程序员-----关于IO流学习日志
- 黑马程序员_第三篇:关于多线程的学习
- 黑马程序员-关于线程学习的若干总结
- 黑马程序员之C#学习笔记:关于C#构造函数
- 黑马程序员_基础加强_关于反射的一些学习
- 黑马程序员_关于集合的学习
- 黑马程序员---关于对ADO.Net学习的总结
- 黑马程序员:Object类:超父类的学习
- 黑马程序员学习笔记——关于readLine()的那些事
- 黑马程序员_关于String的学习
- 黑马程序员——关于HTML网页制作的学习日志
- 黑马程序员-------关于今天的一个程序学习心得
- 黑马程序员__关于学习File类的总结