• final关键字


    前言

    final是 “最终”、“不能修改”的意思。
    在java这门编程语言中,final是一个关键字,它可以被用来修饰类,变量以及成员方法。
    被final修饰的变量,又叫被称为 自定义常量。

    作用

    • 修饰类(修饰的类不能被继承,因为继承会方法重写)
    • 修饰变量(包括成员变量与局部变量)
    • 修饰方法

    正文 

     1.final修饰类

    final关键字修饰一个类,则该类会成为最终类,即该类不能被继承,但是该类可以有父类。

    1. public final class A {
    2. }
    3. //因为A被修饰为final,所有现在B想继承A会报错
    4. class B extends A{
    5. }

    2.修饰变量

    1.修饰成员变量(修饰的是所有对象共享的资源)

    final修饰的变量不能修改,且在初始化时必须赋值

    1. public final class A {
    2. //使用final修饰的成员变量必须声明的同时赋值,且赋值后不允许修改
    3. final static double PI =3.14;
    4. //特别声明有static与没有static声明的变量赋值都只是一个默认值,在后面调用时可以更改这个值
    5. static int sex=20;
    6. int name=10;
    7. public static void main(String[] args) {
    8. A.PI=30;//这里修改常量PI 会报错
    9. System.out.println(A.PI);//3.14
    10. System.out.println(A.sex);//20
    11. A.sex=100;//默认值可以修改
    12. System.out.println(A.sex);//100
    13. }
    14. }

    2.修饰局部变量(修饰的是常量)

    final修饰的变量不能修改,且在初始化时必须赋值

    1. public final class A {
    2. //final修饰的变量不能修改,且在初始化时必须赋值
    3. public static void main(String[] args) {
    4. final double PI=3.14;//常量
    5. PI=3.14159;//重新赋值会报错
    6. }
    7. }

    3.修饰方法

    final修饰的方法不能重写

    1. public class A {
    2. //final修饰的方法不能重写
    3. public final void some(){
    4. System.out.println("123");
    5. }
    6. public final void some(int a){
    7. System.out.println("456");
    8. }
    9. }
    10. class B extends A{
    11. //这里重写A的some方法会报错
    12. public final void some(){
    13. System.out.println("789");
    14. }
    15. }

  • 相关阅读:
    Qt 官方文档及阅读方法
    Sourcemap 配置详解
    2023年7月工作经历二
    【示波器专题】示波器探头的原理深入——无源探头
    【 OpenGauss源码学习 —— 列存储(cstore_vector)】
    2022年BAT最新java800+合集面试复盘,能掌握80%就去进阿里大厂!
    【数据结构初阶-oj】入门二叉树的入门oj
    vue-axios
    html网页代码块高亮加行号
    原型模式:复制对象的技巧
  • 原文地址:https://blog.csdn.net/m0_71673753/article/details/127892802