一 final, 修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能在子类中重载。
声明类:
final class duck { public String name="kyle"; } class Dahuangya extends duck //error:the Dahuangya can not subclass final calss duck { }
声明变量:初始化,且只能读取,不能修改
class duck { public final String name;//error writing public final String na="hello";//right writing }
public class Finaltest { public static void main(String[] argv) { duck du=new duck(); /** du.na="kyle";//error writing */ System.out.println(du.na); } } class duck { public final String na="hello";//right writing }
声明方法,
class duck { protected String name; private String color; public duck(String name,String color) { this.name=name; this.color=color; } public final String getName() { return this.name; } public String getName(String s) { return this.name+s; } } class dahuangya extends duck { public dahuangya(String name, String color) { super(name, color); // TODO Auto-generated constructor stub } /** public String getName() //error-writing { return this.name; } */ public String getName(String s) { return null; } }
因为在超类中方法声明了final 所以子类中不能重载
二:finally
再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。也就是说无论如何都会执行finally语句
try { Scanner in=new Scanner(new File("D:\\myfile.txt")); in.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); }//双反斜杠,第一个为转义 finally{ System.out.println("hello world"); }
上面finally语句一定会执行
相关推荐
final, finally, finalize的区别
一,谈谈final, finally, finalize的区别。 java面试题
Java中final,finally,finalize三个关键字的区别_动力节点Java学院整理
final:修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为 父类被继承。因此一个类不能既被声明为abstract 的,又被声明为final 的。将变量或 方法声明为 final,可以保证它们在...
主要介绍了java 基础之final、finally和finalize的区别的相关资料,需要的朋友可以参考下
Java中final、finally、finalize的区别与用法,困扰了不少学习者,下面我们就这个问题进行一些探讨,希望对大家的学习有所帮助。
对于Java中final、finally、finalize的有关问题做下的思维导图,便于深化记忆,希望对你有帮助!注意:文件为.mm后缀建议下载freemind打开,免费的思维导图软件!
主要介绍了详解Java编程中final,finalize,finally的区别,这个在Java面试题中简直是太常见了...需要的朋友可以参考下
final 是 Java 中的关键字,它也是 Java 中很重要的一个关键字,final 修饰的类、方法、变量有不同的含义;finally 也是一个关键字,不过我们可以使用 finally 和其他关键字结合做一些组合操作; finalize 是一个不...
本篇文章介绍了,在java中final与finally的使用。需要的朋友参考下
hi 大家好,今日,天气剧变,非常冷,不想出门,于是给大家写了篇文章,关于android final关键字及final,finally,finalize的区别相关知识,具体详情如下所示: 先预告一下,下文中仅涉及java语法的讨论,和Android...
1. 注意,final 不是 immutable 2.finalize 真的那么不堪 3. 有什么机制可以替换 finalize 吗
以下是对final,finally,finalize的区别进行了详细的分析介绍,需要的朋友可以过来参考下
1. 注意,final 不是 immutable 2.finalize 真的那么不堪 3. 有什么机制可以替换 finalize 吗
try-finally语句是Microsoft对C和C++语言的扩展,它能使32位的目标程序在异常出现时,有效保证一些资源能够被及时清除,这些资源的清除任务可以包括例如内存的释放,文件的关闭,文件句柄的释放等等。try-finally...
try、catch、finally、return 执行顺序超详细讲解,包看包会。
谈谈final, finally, finalize的区别。 final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或...
Java 中的 final、finally 和 finalize 关键字有什么区别? final:当用“final”关键字声明一个变量时,它的值一旦被赋值就不能改变。当使用“final”关键字声明方法时,它不能在子类中被覆盖。当用“final”...