Java中的final

2023-05-16

1. final Java 中的作用
        final作为 Java 中的关键字可以用于三个地方。用于修饰类、类属性和类方法。
        特征:凡是引用final 关键字的地方皆不可修改!
        (1)修饰类:表示该类不能被继承;
        举个例子:

 people类直接报错。

        (2)修饰方法:表示方法不能被重写;
        (3)修饰变量:表示变量只能一次赋值以后值不能被修改(常量)。
        举个例子:

 上面的一段代码中,对变量i和obj的重新赋值都报错了。

2. final 的用法
        被final 修饰的类不可以被继承
        被final 修饰的方法不可以被重写
        被final 修饰的变量不可以被改变 . 如果修饰引用 , 那么表示引用不可变 , 引用指向的内容可变 .
        被final 修饰的方法 ,JVM 会尝试将其内联 , 以提高运行效率
        被final 修饰的常量 , 在编译阶段会存入常量池中 .
        除此之外, 编译器对 final 域要遵守的两个重排序规则更好 :
        在构造函数内对一个final 域的写入 , 与随后把这个被构造对象的引用赋值给一个引用变量 , 这两个操作之间
        不能重排序 初次读一个包含final 域的对象的引用 , 与随后初次读这个 final , 这两个操作之间不能重排序 .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java中的final 的相关文章

随机推荐

  • 匿名飞控笔记(三)

    姿态解算 四元数表示方向余弦矩阵误差的求解PI误差补偿四元数的求解欧拉角的求解 以下参考 xff1a https blog csdn net zhiyu buliang article details 88936541 1 明确一个概念 x
  • Eigen初始化及基本操作大全

    Eigen常用操作 Eigen3安装 ubuntu如何安装Eigen include directories span class token punctuation span span class token operator span
  • 关于c++多文件编程中遇到class has no member named

    问题描述是关于自己已经在类中定义了该函数或者变量但是却无法识别 这是为什么 xff1f 也许你在使用c 43 43 的时候会出现问题 has no member named 意思就是类没有成员变量XXA 实际上类是具有成员变量XX的 问题的
  • VSCode C++ :ERROR: Unable to start debugging. GDB exited unexpectedly.

    问题描述 在VSCode中运行C 43 43 程序时 xff0c 出现了报错ERROR Unable to start debugging GDB exited unexpectedly 或者Unexpected GDB output fr
  • VMware 克隆centos7虚拟机

    由于要创建多台Linux虚拟机来搭建K8s集群 xff0c 一台一台的安装非常的费时 所以记录如何通过克隆的方式来快速克隆多台虚拟机 一 首先克隆的虚拟机状态必须为关机 二 克隆完成之后 xff0c 选中新克隆的虚拟机右击 xff0c 点击
  • MySql 修改 root 密码

    整理了以下四种在MySQL中修改root密码的方法 可能对大家有所帮助 方法1 xff1a 用SET PASSWORD命令 mysql u root mysql gt SET PASSWORD FOR 39 root 39 64 39 lo
  • Ubuntu16.04:安装python3.6及遗留问题解决

    文章目录 Ubuntu16 04 xff1a 安装python3 6引发问题 xff1a 打开terminal没反应安装pip和python3 6 devpip install加速 Ubuntu16 04 xff1a 安装python3 6
  • 【论文阅读】【综述】3D Object Detection 3D目标检测综述

    目录 写在开头3D Object Detection相关博客 xff1a Sliding windowVote3Deep Fast Object Detection in 3D Point Clouds Using Efficien xff
  • OpenStack历史知识

    翻译自 xff1a https docs openstack org project team guide introduction html OpenStack历史 起源 OpenStack项目在2010年前几个月创建 Rackspace
  • 元学习——meta-learning

    前言 称不上多熟悉这个领域 xff0c 毕竟还没有系统调研 最近读了两篇论文 xff0c 权当总结 学习优化器 简介 在这种方法中 xff0c 一个网络 xff08 元学习器meta learner xff09 学习更新另一个网络 xff0
  • PHP下载docx文档打开时显示 word2007无法打开Office OpenXML 文件

    症状 我自己的PHP xff0c 把word文档存入数据库后 xff0c 再从数据库下载成docx文件 xff1b 当打开该文件时 Word2007 xff0c 出现错误提示 xff1a 无法打开Office OpenXML 文件 文件名
  • 认真聊聊中断(软中断)

    文章目录 软中断与硬中断很像软中断的守护进程注册软中断向量表触发一次软中断总结 前面认认真真聊聊中断 xff0c 其实讲的都是硬中断 xff0c 注意是硬中断不是硬件中断哦 xff0c 硬中断的概念更大 硬中断包括中断 异常以及 INT 指
  • Pycharm 调用sklearn时出现Process finished with exit code -1066598274 (0xC06D007E)

    问题描述 跑代码的时候发现总是莫名奇妙的中断程序 xff0c 出现代码 Process finished with exit code 1066598274 0xC06D007E xff0c 网上搜半天也能用的解决方案 xff0c 后面逐句
  • 如何用C语言写一个服务器和客户端(TCP)

    如果想要自己写一个服务器和客户端 xff0c 我们需要掌握一定的网络编程技术 xff0c 个人认为 xff0c 网络编程中最关键的就是这个东西 socket 套接字 socket 套接字 xff1a socket 的原意是 插座 xff0c
  • CSS三种样式

    CSS样式分为 xff1a 内联式css样式 嵌入式css样式 外部式css样式 1 内联式css样式 内联式css样式表就是把css代码直接写在现有的HTML标签中 lt p style 61 34 color 000099 34 gt
  • ROS开发笔记(3):基于RoboWare Studio 与Python编写动作(action)通讯节点(node)

    ROS的动作非常适合时间不确定 xff0c 目标导向型的操作接口 原理上用话题实现 xff0c 其本质是相关于规定了一系列话题 xff08 目标 结果 反馈 取消等 xff09 的组合使用方法的高层协议 1 定义动作 与 相关话题说明 选中
  • ROS开发笔记(8)——Turtlebot3 Gazebo仿真环境下深度强化学习DQN(Deep Q-Learning)开发环境构建

    本文开发环境为Ubuntu 16 04 ROS版本为kinetic 主要参考链接 xff1a http emanual robotis com docs en platform turtlebot3 machine learning mac
  • 使用opencv实现基于Haar特征的人脸检测

    此文章主要是学习的记录 使用opencv的版本是 3 4 6 实现了图片的人脸检测及人的眼睛 鼻子和嘴巴的检测 里面使用的窗口显示相关的代码都是opencv的函数 人脸检测 openCV的人脸识别主要通过Haar特征分类器实现的 xff0c
  • Xmind2021绿色版,思维导图最佳软件

    Xmind2021绿色版 xff0c 思维导图最佳软件 序言 首先很抱歉拖更很久了 xff0c 因为各种学术上和未来安排上的迷茫和困惑 xff0c 导致我无心管理公众号 xff0c 有一段时间没有为大家带来各类软件和经验分享 xff0c 但
  • Java中的final

    1 final 在 Java 中的作用 final作为 Java 中的关键字可以用于三个地方 用于修饰类 类属性和类方法 特征 xff1a 凡是引用final 关键字的地方皆不可修改 xff01 1 修饰类 xff1a 表示该类不能被继承