面试的题目:请你写出Object类的6个方法
Object obj=new Object();
- obj.toString(); 将对象转换成字符串
- obj.equals(null); 判断两个对象的内容是否相同
- obj.hashCode(); 产生对象的一个哈希码(int) 底层结构采用了哈希表,就需要重写该方法
- obj.getClass(); 得到对象的结构信息(类对象) 有几个属性、方法、构造方法、类名、包名 反射!!
- obj.wait(); 让当前线程等待 多线程通信的
- obj.notify(); 唤醒obj的等待队列中任意一个线程
- obj.notifyAll(); 唤醒obj的等待队列中所有的线程
除此之外可能还有private、protected、默认的方法
-
protected void finalize() 垃圾回收对象之前先调用该对象的finalize()
-
protected native Object clone() 克隆 快速复制 设计模式:原型模式
- private static native void registerNatives()
native :本地的
native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中。Java语言本身不能对操作系统底层进行访问和操作,但是可以通过JNI接口调用其他语言来实现对底层的访问。(摘自https://blog.csdn.net/funneies/article/details/8949660)