JAVA之Object类下的常用方法

在定义Java类时,如果没有指定父类,那么默认都会去继承Object类。配合Java的向上类型转换,借助Object类就可以完成很多工作了。
1.
public final native Class<?> getClass();
这个方法是返回对象的实际类型,我们看个例子
public class TestReflect {

public static void main(String[] args) {  
    Object object = new Object();  
    System.out.println(object.getClass());  
}  

}
2.
public boolean equals(Object obj) {
return (this == obj);
}
 equals()通常用来进行比较,在Object类中,它进行了引用的比较,只有引用相同时会返回true。但是这样并不是我们想要的比较的情况,比如字符串的比较是比较每个字符是否相同。那么在String类中就会对equals()方法进行重写,String类中的equals()方法的实现如下:
 public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = value.length;
if (n == anotherString.value.length) {
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n-- != 0) {
if (v1[i] != v2[i])
return false/;
i++;
}
return true;
}
}
return false;
}
字符串的比较,进行了几次判断:
(1)首先判断引用相同,如果相同则返回true;
(2)判断传入的对象是否为String,如果不是String,则直接返回false,没有比较的必要,狗和人怎么比;
(3)比较字符串的长度,如果两个字符串的长度不相同,也就不用比较了,长度不同显而易见是不相同了;
(4)上面的比较都没成立,则进行逐字符的比较。
对于两个对象的比较,通常我们需要类似像String类中的equals()方法一样,这样就需要重写equals()方法。
equals与简单分析:
a: 对于
,如果作用于基本数据类型的变量,则直接比较其存储的 “值”是否相等;
如果作用于引用类型的变量,则比较的是所指向的对象的地址
b:对于equals方法,注意:equals方法不能作用于基本数据类型的变量
如果没有对equals方法进行重写,则比较的是引用类型的变量所指向的对象的地址;
诸如String、Date等类对equals方法进行了重写的话,比较的是所指向的对象的内容。

toString()方法用于返回以一个字符串表示的 Number 对象值。
如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值。
如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。
语法
以 String 类为例,该方法有以下几种语法格式:
String toString()
static String toString(int i)
参数
i – 要转换的整数。
返回值
toString(): 返回表示 Integer 值的 String 对象。
toString(int i): 返回表示指定 int 的 String 对象。
实例
public class Test{
public static void main(String args[]){
Integer x = 5;
System.out.println(x.toString());
System.out.println(Integer.toString(12));
}
}
编译以上程序,输出结果为:
5
12
4.
hashCode()方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值