参考答案和解析
正确答案:
答:
final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此      一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中      不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为      final的方法也同样只能使用,不能重载
finally—再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会      执行,然后控制就会进入 finally 块(如果有的话)。
finalize—方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理      工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的      ,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize()       方法是在垃圾收集器删除对象之前对这个对象调用的。
更多“谈谈final, finally, finalize的区别。 ”相关问题
  • 第1题:

    final, finally, finalize的区别。


    正确答案:

     

    final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。

    内部类要访问局部变量,局部变量必须定义成final 类型,例如,一段代码……

    finally 是异常处理语句结构的一部分,表示总是执行。

    finalize 是Object 类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,

    可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。JVM 不保证此方

    法总被调用

  • 第2题:

    下面这段程序的输出结果是error。这种说法对吗? public void compute(){ try{ System.out.println(3/0); } catch(Exception e){ System.out.println('error'); } finally{ System.out.println('final'); } }


  • 第3题:

    1、在try中如果存在return语句,其执行是在finally语句之前还是之后? 2、Throwable,error,exception三者之间有何区别? 3、Java中抛出异常有几种方法? 4、如何实现自己定义异常? 5、final,finally两者之间的区别是什么?


    错误

  • 第4题:

    由于finalize()方法的调用时机并不确定,所以一般不用finalize()。


    正确

  • 第5题:

    由于finalize()方法的调用时机并不确定,所以一般不用finalize()


    创建对象时调用构造方法