Object 有哪些常用方法?
Object 类是 Java 中的一个基本类型,它是所有其他类的父类。Object 类中有许多常用的方法,下面列出一些常用的方法以及其含义:
- toString():返回对象的字符串表示形式。
- equals(Object obj):比较两个对象是否相等。
- hashCode():返回对象的哈希码,用于哈希表等数据结构。
- getClass():返回对象的类。
- clone():返回对象的克隆,用于创建对象的副本。
- notify():唤醒通知线程。
- notifyAll():唤醒所有通知线程。
- wait():等待一个通知线程。
- wait(long timeout):等待一个通知线程,并设置超时时间。
- notify():唤醒一个通知线程。
- notifyAll():唤醒所有通知线程。
- broadcast():向一组通知对象广播信号。
- filter(Predicate predicate):根据条件过滤集合。
- find(Object target):在集合中查找一个对象,如果找到则返回对象本身,否则返回 null。
- findAll():在集合中查找所有对象,如果找到则返回一个数组,否则返回空数组。
- collect(BiFunction<? super K,? super V,? extends V> function):根据函数对集合中的元素进行转换。
- sort(Comparator<? super V> c):对集合进行排序。
- count():返回集合中元素的数量。
- toArray():将集合转换为一个数组。
- size():返回集合的大小。
这些方法是 Object 类中常用的,其中大部分方法都用于对象的操作和管理。理解这些方法的含义和使用方式对于更好地使用 Java 类型系统和开发高效的代码非常重要。
Object相关的面试题:
给出 toString() 方法的实现。
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
实现 equals() 方法,比较两个对象是否相等。
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof Object)) {
return false;
}
final Object that = (Object) obj;
if (this.field1 != that.field1) {
return false;
}
return true;
}
实现 hashCode() 方法,返回对象的哈希码。
public int hashCode() {
return Objects.hash(field1, field2);
}
实现 getClass() 方法,返回对象的类。
public Class<?> getClass() {
return getClass().getSimpleName();
}
实现 clone() 方法,返回对象的克隆。
public Object clone() {
try {
return super.clone();
} catch (CloneNotSupportedException e) {
throw new RuntimeException(e);
}
}
实现 notify() 方法,唤醒通知线程。
public void notify() {
notifyAll();
}
还没有评论,来说两句吧...