概述:
- final:可用于修饰成员变量、方法、方法参数、类,代表最终态,不可变。
- final、finally、finalize
1.final 本例已讲。
2.finally 用于异常,无论异常与否,都需要执行的代码块,通常是做一些资源回收和善后工作。
3.finalize 和垃圾回收机制有关。gc()后系统会执行finalize方法,它可能会拯救一些将被回收的变量。
package com.cxyapi.oo;
/** final演示
* @author cxy @ www.cxyapi.com
*/
public class FinalTest
{
//一个常量 PI是不允许在程序中被修改的
public static final double PI=3.1415926;
public static void main(String[] args)
{
new FinalTest().test(1);
}
/** final方法,防止子类修改(重写),据说执行效率会比不加final好
* @param i final参数 只能读取不能被改变
*/
public final void test(final int i)
{
//i=2;
System.out.println(i);
}
}
/** FinalTest的子类,为了演示final方法和final类
* 1.如果使用final修饰FinalTest,你会发现FinalTestSon将不能继承FinalTest
* 2.FinalTest.test方法是用final修饰的,所以不能被复写
* @author cxy @ www.cxyapi.com
*/
class FinalTestSon extends FinalTest
{
//public void test(final int i){}
}
声明:
1.原创文章,转载请标明并加本文连接。
2.文章反映个人愚见,如有异议欢迎讨论指正
3.更多的内容请看我的 个人博客(测试版)