![名师讲坛:Java开发实战经典(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/824/26793824/b_26793824.jpg)
上QQ阅读APP看书,第一时间看更新
6.4 final关键字
final在Java中表示的意思是最终的意思,也可以称为完结器。可以使用final关键字声明类、属性、方法,在声明时要注意以下几点:
(1)使用final声明的类不能有子类;
(2)使用final声明的方法不能被子类所覆写;
(3)使用final声明的变量即成为常量,常量不可以修改。
【例6.17】使用final修饰的类不能有子类
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P174_124360.jpg?sign=1739265322-UirReWTjfx4yZJmjxX5d3VrPk3sXJosF-0-8c24a628a33dfe4655184d80d1611611)
程序编译时出错:
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P174_124361.jpg?sign=1739265322-GtqXpqGWclzdJ5JZTmN9XKpKQQ2htCNV-0-189fde85a69240e7bd3202fda2666956)
【例6.18】使用final修饰的方法不能被子类覆写
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P175_124362.jpg?sign=1739265322-9kO6SCBmEr9rYaWdgAzugtydwD7mp0mn-0-efa7894a62ada1b9a6d439b4c627cff0)
程序编译时出错:
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P175_124363.jpg?sign=1739265322-rpkVALmAsdUcCThyrMnkfzFgjjxSMtQE-0-5084d9c6f5fd085922647707c9b93d9c)
【例6.19】被final修饰的变量即成为常量,常量是不能被修改的
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P175_124364.jpg?sign=1739265322-PJd5GJhp8VjfaQD06HcxlFHsXhK780EA-0-c97eba4eed450f6f86ba6271b3af5ba2)
程序编译时出错:
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P175_124365.jpg?sign=1739265322-KcX7Sm840hXfzmxmOxaPh6hYRbezG46M-0-4884de40112a7eaec9cb97fa91c8beda)
使用final定义的常量本身不能修改,所以当修改时程序就会出现错误。
注意
final变量的命名规则。
在使用final声明变量的时候,要求全部的字母大写,例如:INFO,这点在开发中是非常重要的。
如果一个程序中的变量使用publicstatic final声明,则此变量将称为全局常量,如下面的代码:
![](https://epubservercos.yuewen.com/DE8B7B/15253389304122106/epubprivate/OEBPS/Images/Figure-P175_124368.jpg?sign=1739265322-4714VA8L13BFTODgC4FLHmkcIdiNAOdx-0-5d89301f46f71e13321585b11d135a63)