[转载] java中final,finally,finalize三者的作用和区别

参考链接: Java中final,finally和finalize

Final是一个修饰符: 

当final修饰一个变量的时候,变量变成一个常量,它不能被二次赋值 

当final修饰的变量为静态变量(即由static修饰)时,必须在声明这个变量的时候给它赋值 

当final修饰方法时,该方法不能被重写 

当final修饰类时,该类不能被继承 

Final不能修饰抽象类,因为抽象类中会有需要子类实现的抽 象方法,(抽 象类中可以有抽象方法,也可以有普通方法,当一个抽象类中没有抽象方 法时,这个抽象类也就没有了它存在的必要) 

Final不能修饰接口,因为接口中有需要其实现类来实现的方法 

Finally: 

Finally只能与try/catch语句结合使用,finally语句块中的语句一定会执行, 并且会在return,continue,break关键字之前执行 

finalize: 

Finalize是一个方法,属于java.lang.Object类,finalize()方法是GC (garbage collector垃圾回收)运行机制的一部分,finalize()方法是在 GC清理它所从 属的对象时被调用的 

手动清理,sysytem.gc

上一篇:TestGc finalize()


下一篇:final,finally,finalize的区别