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 的相关文章

  • Grails 3.x bootRun 失败

    我正在尝试在 grails 3 1 11 中运行一个项目 但出现错误 失败 构建失败并出现异常 什么地方出了错 任务 bootRun 执行失败 进程 命令 C Program Files Java jdk1 8 0 111 bin java
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • Java EE:如何获取我的应用程序的 URL?

    在 Java EE 中 如何动态检索应用程序的完整 URL 例如 如果 URL 是 localhost 8080 myapplication 我想要一个可以简单地将其作为字符串或其他形式返回给我的方法 我正在运行 GlassFish 作为应
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • 磁模拟

    假设我在 n m 像素的 2D 表面上有 p 个节点 我希望这些节点相互吸引 使得它们相距越远吸引力就越强 但是 如果两个节点之间的距离 比如 d A B 小于某个阈值 比如 k 那么它们就会开始排斥 谁能让我开始编写一些关于如何随时间更新
  • 我可以使用 HSQLDB 进行 junit 测试克隆 mySQL 数据库吗

    我正在开发一个 spring webflow 项目 我想我可以使用 HSQLDB 而不是 mysql 进行 junit 测试吗 如何将我的 mysql 数据库克隆到 HSQLDB 如果您使用 spring 3 1 或更高版本 您可以使用 s
  • 路径中 File.separator 和斜杠之间的区别

    使用有什么区别File separator和一个正常的 在 Java 路径字符串中 与双反斜杠相反 平台独立性似乎不是原因 因为两个版本都可以在 Windows 和 Unix 下运行 public class SlashTest Test
  • Mockito when().thenReturn 不必要地调用该方法

    我正在研究继承的代码 我编写了一个应该捕获 NullPointerException 的测试 因为它试图从 null 对象调用方法 Test expected NullPointerException class public void c
  • 无法解析插件 Java Spring

    我正在使用 IntelliJ IDEA 并且我尝试通过 maven 安装依赖项 但它给了我这些错误 Cannot resolve plugin org apache maven plugins maven clean plugin 3 0
  • 如何为俚语和表情符号构建正则表达式 (regex)

    我需要构建一个正则表达式来匹配俚语 即 lol lmao imo 等 和表情符号 即 P 等 我按照以下示例进行操作http www coderanch com t 497238 java java Regular Expression D
  • JRE 系统库 [WebSphere v6.1 JRE](未绑定)

    将项目导入 Eclipse 后 我的构建路径中出现以下错误 JRE System Library WebSphere v6 1 JRE unbound 谁知道怎么修它 右键单击项目 特性 gt Java 构建路径 gt 图书馆 gt JRE
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • Google App Engine 如何预编译 Java?

    App Engine 对应用程序的 Java 字节码使用 预编译 过程 以增强应用程序在 Java 运行时环境中的性能 预编译代码的功能与原始字节码相同 有没有详细的信息这是做什么的 我在一个中找到了这个谷歌群组消息 http groups
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 在 Maven 依赖项中指定 jar 和 test-jar 类型

    我有一个名为 commons 的项目 其中包含运行时和测试的常见内容 在主项目中 我添加了公共资源的依赖项
  • 使用 JMF 创建 RTP 流时出现问题

    我正处于一个项目的早期阶段 需要使用 RTP 广播DataStream创建自MediaLocation 我正在遵循一些示例代码 该代码目前在rptManager initalize localAddress 出现错误 无法打开本地数据端口
  • 使用 xpath 和 vtd-xml 以字符串形式获取元素的子节点和文本

    这是我的 XML 的一部分

随机推荐

  • 匿名飞控笔记(三)

    姿态解算 四元数表示方向余弦矩阵误差的求解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 表示该类不能被继承