final,finally和finalize总结
2010-11-09 11:41
169 查看
在某笔试题中看到,昨天复习了下JAVA后整理一下.
final可以添加的位置有三个:class之前,变量前,成员方法前.
最常见的是在变量前如:
用于申请常量,和C++中的const用法相同.
类所属常量也常用final和static一起定义.如:
在class前,如:
表示该类不能被继承.
在类的成员方法前,如:
表示该成员方法不允许在继承的时候被子类重写.
finally用于异常处理中,如:
finally中的语句无论异常处理的过程如何(是否跳出try,执行catch),都会被执行.
finalize是类的一个默认方法,和类的回收机制有关,在CG回收类前,会将类从finalizable变为finalized并执行finalize()方法.可以由程序员添加finalize方法,但因为CG调用无法掌控以及会产生对象重生等问题,一般不会这么做.如:
final可以添加的位置有三个:class之前,变量前,成员方法前.
最常见的是在变量前如:
final int length=10;
用于申请常量,和C++中的const用法相同.
类所属常量也常用final和static一起定义.如:
public class A { public static final int a=1; public static final int b=2; public static final int c=3; }
在class前,如:
public final class A { }
表示该类不能被继承.
在类的成员方法前,如:
public class A { private int number; public final int getNumber() { return number; } }
表示该成员方法不允许在继承的时候被子类重写.
finally用于异常处理中,如:
try { } catch(Exception e) { } finally { }
finally中的语句无论异常处理的过程如何(是否跳出try,执行catch),都会被执行.
finalize是类的一个默认方法,和类的回收机制有关,在CG回收类前,会将类从finalizable变为finalized并执行finalize()方法.可以由程序员添加finalize方法,但因为CG调用无法掌控以及会产生对象重生等问题,一般不会这么做.如:
public class A { public void finalize() { System.out.println("A finalized"); } }
相关文章推荐
- java 自我知识总结(十八)final finalize finally
- Java 中 final、finally 和 finalize 使用总结
- final,finally,finalize的总结
- Java基础总结从0开始(二):final、finally、finalize的区别
- final, finally, finalize的区别
- final、finally、finalize 三者区别
- final,finally和finalize的使用
- final,finally和finalize的区别
- final、finally和finalize(二)
- Java面试02--final、finally和finalize的区别
- final、finalize 和 finally 的不同之处
- final,finally,finalize的区别?
- Java中final、finally、finalize的简单区别,中等区别,详细区别(Lawliet 修改+注释版)
- final,finally,finalize的区别
- final/finalize/finally的区别
- final、finally、finalize
- final、finally和finalize的区别
- final, finally, finalize的区别
- Thinking in java-19 final、finally、finalize关键字
- 谈谈final, finally, finalize的区别