java关键字final用法知识点

在本篇文章里小编给大家分享的是关于java关键字final用法知识点以及相关实例内容,有需要的朋友们可以学习下。

inal:最终的,确保使用前是被赋值得,一旦赋值后不可修改

1 数据

①局部变量

基本数据类型:

可以先定义后赋值,但要保证在使用前是已被赋值的,一旦赋值后不可修改

引用数据类型:

可以先定义后赋值,但要保证在使用前是已被赋值的,一旦赋值后不可修改

引用内容不可修改,但备用用的对象内容可以被修改

②成员变量

必须保证成员变量在使用前被赋值;

成员变量赋值的方式有两种,1声明变量时赋值,2构造函数中赋值;

public static void main(String[] args) { //局部变量 //①基本数据类型 final int val;//先定义 // val = val + 1;//报错没有赋值,无法使用 val = 7 ;//再赋值 //②引用数据类型 final score score = new score("Jack",98,95,90); score.toString(); //score = new score("Tom",77,89,99);//引用无法再次修改 score.name = "Tom"; score.toString(); }

2 方法参数

方法参数上做 final 修饰后,整个方法体内参数值不允许被改变。

public score(final String name,int yuWen, int shuXue, int yingYu) { //name = "jack";//报错 this.name = name; this.yuWen = yuWen; this.shuXue = shuXue; this.yingYu = yingYu; }

3 方法

方法上做 final 修饰后,被继承的子类无法覆盖此方法,可以被继承。

不可以修饰构造方法

4类

在类上做 final 修饰后,此类不允许被继承。

违背了面向对象编程中的 “ 继承 ”

以上就是本次介绍的关于java关键字final的全部知识点内容,感谢大家的阅读和对编程之家的支持

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...