美文网首页android
final,finally,finalize是有区别的

final,finally,finalize是有区别的

作者: 孙科技 | 来源:发表于2018-03-20 17:35 被阅读2次

    本来不想写这一章的,但是我面试时被问到这个问题,fianl 、finally还知道,finalize是什么鬼!他们之间有什么区别,我直接懵逼了!卧薪尝胆做个笔记分享一下。

    Final:用于声明属性、方法和类。修饰的是基本类型,就表示这个变量被赋予的值是不可变的,即它是个常量;final修饰的方法不能被子类重写,但不影响子类的继承;final修饰的类不能被继承 。

    Finally:只用在try-catch-finally语句中,不论有异常还是没有异常,这段语句最终总被执行。

    Finalize:此方法是Object类中的一个方法(所有类都有这个方法),是GC(garbage collertor)运行机制的一部分,是在GC清理它所从属的对象时被调用的,如果执行它的过成中抛出了无法捕获的异常,GC将终止对该对象的清理,并且该异常会被忽略,知道下一次GC开始清理这个对象时,它的Finalize()会被再次调用,调用他们的作用只是建议GC启动,清理无用对象释放内存空间,但GC的启动并不是一定的,这由java虚拟机来决定,知道java虚拟机停止运行。

    由此总结出android对Java要精通不然面试时就尴尬了!

    相关文章

      网友评论

        本文标题:final,finally,finalize是有区别的

        本文链接:https://www.haomeiwen.com/subject/fubbqftx.html