Java 程序员经典面试题集大全 (六),springboot 原理图
**finalize:**方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要清理工作。finalize() 方法是在垃圾收集器删除对象之前被调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。 一般情况下,此方法由 JVM 调用,程序员不要去调用!
27、写出 java.lang.Object 类的六个常用方法
(1)public boolean equals(java.lang.Object)
比较对象的地址值是否相等,如果子类重写,则比较对象的内容是否相等;
(2)public native int hashCode()
获取哈希码
(3)public java.lang.String toString()
把数据转变成字符串
(4)public final native java.lang.Class getClass()
获取类结构信息
(5)protected void finalize() throws java.lang.Throwable
垃圾回收前执行的方法
(6)protected native Object clone() throws java.lang.CloneNotSupportedException
克隆
(7)public final void wait() throws java.lang.InterruptedException
多线程中等待功能
(8)public final native void notify()
多线程中唤醒功能
(9)public final native void notifyAll()
多线程中唤醒所有等待线程的功能
28、private/默认/protected/public 权限修饰符的区别
<table border="1" cellpadding="1" cellspacing="1" style="width:600px;"><tbody><tr><td style="text-align:center;"></td><td style="text-align:center;"><strong>同一个类</strong></td><td style="text-align:center;"><strong>同一个包</strong></td><td style="text-align:center;"><strong>子类</strong></td><td style="text-align:center;"><strong>所有类</strong></td></tr><tr><td style="text-align:center;"><strong>private</strong></td><td style="text-align:center;">?</td><td style="text-align:center;"></td><td style="text-align:center;"></td><td style="text-align:center;"></td></tr><tr><td style="text-align:center;"><strong>defailt</strong></td><td style="text-align:center;">?</td><td style="text-align:center;">?</td><td style="text-align:center;"></td><td style="text-align:center;"></td></tr><tr><td style="text-align:center;"><strong>protected</strong></td><td styl
e="text-align:center;">?</td><td style="text-align:center;">?</td><td style="text-align:center;">?</td><td style="text-align:center;"></td></tr><tr><td style="text-align:center;"><strong>public</strong></td><td style="text-align:center;">?</td><td style="text-align:center;">?</td><td style="text-align:center;">?</td><td style="text-align:center;">?</td></tr></tbody></table>
类的访问权限只有两种
public 公共的:可被同一项目中所有的类访问。 (必须与文件名同名)
**default 默认的:**可被同一个包中的类访问。
成员(成员变量或成员方法)访问权限共有四种:
**public?公共的:**可以被项目中所有的类访问。(项目可见性)
**protected?受保护的:**可以被这个类本身访问;同一个包中的所有其他的类访问;被它的子类(同一个包以及不同包中的子类)访问。(子类可见性)
**default?默认的:**被这个类本身访问;被同一个包中的类访问。(包可见性)
**private?私有的:**只能被这个类本身访问。(类可见性)
29、继承条件下构造方法的执行过程
评论