<【JAVA中的final关键字详解】(promax版)>

<【JAVA中的final关键字详解】(promax版)>

一、final关键字的概念(什么是final)

final翻译为中文是最终的意思,那么在代码中,就是不能被改变的。

同时final作为关键字可以修饰方法、类、以及变量。

当final关键字修饰方法时:

表示该方法是最终方法,不能被重写

当final关键字修饰类时:

表示该类是最终类,不能被继承。即断子绝孙类。

当final关键字修饰变量时:

表示该变量为常量,只能被赋值一次

二、final关键字的意义(为什么要用final)

如果当前的方法是一种规则,不想被别人改变,那么就可以用final修饰。

在这里插入图片描述

如图object类中的Class方法就是用final修饰的。

当前方法就是获取字节码文件,要与本地的系统产生一个交互。

也就是一个规则,这个规则不能让任何人去改变,所以就用final修饰了

如果用final修饰类,也是同理。大家总所周知的String类就是用final修饰的,所以他是不能被改变的。具体可以去我写的第三篇博客去了解。
在这里插入图片描述

当一个变量的值,你不想让它再发生改变,就用final修饰。

在这里插入图片描述

如JAVA中Math类中PI就是圆周率,它就是一个常量,只能被赋值一次,后面不能再更改。

三、final关键字的用法(如何使用final)

由于final修饰类和方法,日常开发不多,我们不用再做了解。

这里我们对final修饰常量进行详解。

常量的一些细节用法

常量一般作为系统的配置信息。方便维护,提高可读性。

如果final修饰的变量为基本类型,那么变量储存的数据值不能发生改变。

如果final修饰的变量为引用类型,那么变量储存的地址值不能发生改变,对象内部一些属性值可以改变。

我们给出一个例子来加强理解。

 public static void main(String[] args) {

        //用final关键词修饰的常量PI
        final double PI = 3.14;
        //用final关键词修饰的对象P P中记录的是这个对象此时的地址值
        final Phone P = new Phone();
        //此时可以用P类的set和get方法为类中的属性赋值
        P.setColor("远峰蓝");
        P.setBrand("iphone");
        P.setPrice(19999);
        //如果此时再创建一个对象用P来记录的话就会报错
        P = new Phone();//此时代码报错
        //因为这个P是用final来修饰的,它记录的地址值是不能改变的
        // 而此时因为new关键字又开辟了一块空间用了新的地址值,所以此时代码就会报错
 }

所以final修饰的地址值不能改变,而内部的属性值还是能改变的

核心:常量记录的数据是不能改变的。

常量的命名规范:
  • 单个单词:全部大写
  • 多个单词:全部大写,单词之间用下划线分隔

这一篇博客就到这了,如果你有什么疑问和想法可以打在评论区,或者私信我。

我很乐意为你解答。那么我们下篇再见!

  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值