[Java 编程思想]第七章

final

  • 两种理由:设计和效率

  • -许多编程语言都有某种方法,来向编译器告知一块数据是恒定不变的。有时数据的恒定不变是很有用的,比如
  • 一个永不改变的编译时常量
  • 一个在运行时被初始化的值,而你不希望它被改变。

  • final static基本类型全用大写字母命名。

  • 空白final
    空白final是指被声明为final但又未给定初值的域
public class BlankFinal {
    private final int i;    
    public BlankFinal() {
        i = 1;
    }
}

必须在域的定义处或者每个构造器中用表达式对final进行赋值


  • final方法禁止方法覆盖时,可以用final。

  • final类不允许继承,不允许做任何变动

  • 只有非private方法才可以被继承。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,991评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • 组合语法 继承语法 代理——继承和组合的中庸之道。将一个成员对象置于所要构造的类中,同时在此类暴露了该成员的所有方...
    MAXPUP阅读 90评论 0 0
  • Kotlin 源代码编译过程分析 我们知道,Kotlin基于Java虚拟机(JVM),通过Kotlin编译器生成的...
    光剑书架上的书阅读 2,944评论 0 13
  • 我们都会有过那样一个曾经。 喜欢的菜,渴望天天吃,我们坚信,会一直喜欢如初;喜欢的歌,希望循环听,我们坚信,那会永...
    如果有如果x阅读 1,197评论 4 7