【前端学java】java中final修饰符(5)

往期回顾:

什么是Final

在Java中,final 是一个关键字,用于表示不可变 的特性,类似于Js中的const声明 。当final被应用到类、方法或变量时,它具有以下不同的含义。

Final类

如果一个类被声明为final ,则该类不能被其他类所继承。这样的类称为"final类"。通常将类声明为final是为了防止其他类继承它,或者是为了确保类的实现不会被修改和继承。

示例代码:

java 复制代码
final class MyClass {
    // 类的内容
}

// 下面的代码会引发编译错误,因为无法继承final类
class MySubclass extends MyClass {
    // 编译错误
}

Final方法

如果一个方法被声明为final ,则子类不能覆盖(重写)这个方法。这样的方法称为"final方法"。通常将方法声明为final是为了确保方法的逻辑不会被修改,以及避免在子类中意外地改变其行为。

示例代码:

java 复制代码
class Parent {
    // final方法
    public final void myMethod() {
        // 方法内容
    }
}

class Child extends Parent {
    // 编译错误:无法覆盖final方法
    public void myMethod() {
        // 子类中不能重写final方法
    }
}

Final变量

在Java中,final 关键字还可以应用于变量,表示该变量的值只能被赋值一次,之后就不可再修改。一旦被赋值后,final变量将成为常量,并且必须在声明时或构造函数中初始化。

示例代码:

java 复制代码
class MyClass {
    // final变量
    public final int myConstant = 10;

    // final变量的初始化可以在构造函数中完成
    public final double myDouble;

    public MyClass(double value) {
        this.myDouble = value;
    }

    // 下面的代码会引发编译错误,因为final变量的值不能再修改
    public void updateConstant() {
        // 编译错误:final变量的值不可更改
        myConstant = 20;
    }
}

总结:在Java中,final 关键字用于表示不可变的类、方法或变量。final 类不能被继承,final 方法不能被子类重写,final 变量的值只能被赋值一次且不可更改。通过使用final,可以增加代码的安全性,防止意外的修改和继承,并且优化编译器对常量的处理。

下一篇学习

相关推荐
LucianaiB1 分钟前
如何做好一份优秀的技术文档:专业指南与最佳实践
android·java·数据库
面朝大海,春不暖,花不开25 分钟前
自定义Spring Boot Starter的全面指南
java·spring boot·后端
得过且过的勇者y26 分钟前
Java安全点safepoint
java
夜晚回家1 小时前
「Java基本语法」代码格式与注释规范
java·开发语言
斯普信云原生组1 小时前
Docker构建自定义的镜像
java·spring cloud·docker
wangjinjin1801 小时前
使用 IntelliJ IDEA 安装通义灵码(TONGYI Lingma)插件,进行后端 Java Spring Boot 项目的用户用例生成及常见问题处理
java·spring boot·intellij-idea
wtg44521 小时前
使用 Rest-Assured 和 TestNG 进行购物车功能的 API 自动化测试
java
白宇横流学长2 小时前
基于SpringBoot实现的大创管理系统设计与实现【源码+文档】
java·spring boot·后端
fat house cat_2 小时前
【redis】线程IO模型
java·redis
stein_java3 小时前
springMVC-10验证及国际化
java·spring