Object类
Object类是类层次结构的根,Java中所有的类都继承自这个类
2个特征
Object类是Java中唯一没有父类的类。
其他所有的类都继承了Object类中的方法,所以其方法的重要性不言而喻
如果在类的声明中未使用extends关键字指明其父类,则默认父类为Object类
public class Person {
…
}
等价于:
public class Person extends Object {
…
}
==操作符
equals方法:
是Object类的方法,由于所有类都继承Object类,也就继承了equals()方法。
只能比较引用类型,
在Object类的定义中,其作用与“==”相同,比较是否指向同一个对象。格式:obj1.equals(obj2)
注意:对类File、String、Date、封装类(Wrapper Class)及很多重写了equals()方法的类来说,是比较类型及内容而不考虑引用是否指向同一个对象。
String类
toString()方法在Object类中定义,其返回值是String类型,内容为类名以及该对象的引用地址。
1 在进行String与其它类型数据的连接操作时,自动调用toString()方法。
例如:
Date now=new Date();
System.out.println(“now=”+now);
相当于
System.out.println(“now=”+now.toString());
2 可以根据需要在用户自定义类型中重写toString()方法
比如String 类就重写了toString()方法,返回字符串的值。
s1=“hello”;
System.out.println(s1);
相当于
System.out.println(s1.toString());
3 基本类型数据转换为String类型时,调用了对应封装类的 toString()方法例如:
int a=10;
System.out.println(“a=”+a);
Java中的字符串与String
Java中字符串是常量,它们的值在创建之后不能更改。
String类的引用可以指向不同的字符串,这是因为字符串对象虽然是不能修改的, 但是它们的地址可以共享。