Java中final用法与详解

final作为Java中经常用到的关键字,了解final的使用方法是非常有必要的。

这里从final关键字在数据域、方法和类中三个方面分析final关键字的主要用法。

final应用于基本数据类型

1、对于基本数据类型使用final,它就是一个常量,数值恒定不变。

2、一个既是static又是final的域只占据一段不能改变的存储空间。(public static final int VALUE )将数据定义为static强调只有一份,定义为final,则说明它是一个常量

3、Java允许声明为final但又未给定初值的域(空白final),但必须确保在使用前被初始化。(必须在域的定义或者每个构造器初始化时用表示式对final进行赋值)。

4、在方法参数列表中将参数声明为final,这时参数的值在方法体内是不能被修改的,即不能被重新赋值。(主要用来向匿名内部类传递数据)

final修饰引用类型

修饰引用类型。这时参数变量所引用的对象是不能被改变的。但是对于引用数据类型,如果修改其属性的话是完全可以的。

final方法

1、使用final修饰方法时,可以把方法锁定,以防任何继承类修改它的含义。(这是出于设计的考虑)

2、方法被修饰为final时,就是同意编译器将针对该方法的所有调用都转换为内嵌调用。

3、所有的private方法都隐式地指定为final的。

4、修饰类中的方法,类可以被继承,但继承后的方法不能被重写。

final类

1、当某个类整体定义为final时,就表明不允许继承该类,同时也意味着它不会有子类。(String类不能继承主要是因为被final修饰了)

posted @ 2022-05-09 17:31  zhαojh  阅读(1585)  评论(0编辑  收藏  举报