当前位置: 首页 > news >正文

final、const、readonly关键字在不同语言中代表着什么

一、Java
1.被final修饰的类不能被继承。
2.被final修饰的方法不能被重写。
被 final 修饰的类中所有的成员方法都会隐式的定义为 final 方法。
若父类中 final  方法的访问权限为 private ,则子类中不能直接继承该方法。此时可以在子类中定义相同方法名的函数,此时不会与 final  相矛盾,因为这是在子类中重新定义了新方法。
3.被final修饰的变量在初始化后不能被赋值。但可以在构造函数中进行第一次初始化。


二、C#
1.被sealed修饰的类不能被继承。
2.被sealed修饰的方法不能被重写。
3.被readonly修饰的变量不能被修改。这与Java中的final关键字类似。
readonly关键字可用于实例字段和静态字段,它确保字段只能在声明时或在类的构造函数(对于实例字段)或静态构造函数(对于静态字段)中进行赋值。一旦字段被赋值,其值就不能被修改。
4.const关键字用于声明编译时常量,这些常量的值必须在声明时指定,并且之后不能被修改。被const修饰的常量隐式是静态的。
5.readonly字段可以是任何类型(值类型或引用类型),const字段只能是值类型或字符串。


三、C++
1.在C++11及以后的版本中,被final修饰的类不能被继承。
2.被final修饰的成员函数不能被重写。
3.被const修饰的变量在初始化后不能被重新赋值。这与Java中的final关键字类似。
4.被const修饰的成员函数不会修改对象的任何成员变量(除被标记为mutable之外)。
5.不能在const对象上调用非const成员函数。


四、Swift
1.被final修饰的类不能被继承。
2.被final修饰的方法不能被重写。
3.可以在属性和下标脚本上使用 final 来防止它们被子类重写或继承。 Swift 中的属性默认就是不可重写的,但可以标记它们为 open 或 override来让属性可重写。
4.使用let来声明常量,var来声明变量。


五、Kotlin
1.类默认是final的。若希望一个类能够被继承,需要使用open关键字来修饰它。
2.方法默认是final的。若希望一个方法能够被重写,需要使用open关键字来修饰它。在子类重写父类方法时,需要用override来修饰子类方法。
3.使用val修饰的变量在初始化后不能被修改,使用var修饰的变量可以被修改。
 


微风不燥,阳光正好,你就像风一样经过这里,愿你停留的片刻温暖舒心。

我是程序员小迷(致力于C、C++、Java、Kotlin、Android、Shell、JavaScript、TypeScript、Python等编程技术的技巧经验分享),若作品对您有帮助,请关注、分享、点赞、收藏、在看、喜欢,您的支持是我们为您提供帮助的最大动力。

欢迎关注。助您在编程路上越走越好!

相关文章:

final、const、readonly关键字在不同语言中代表着什么

一、Java 1.被final修饰的类不能被继承。 2.被final修饰的方法不能被重写。 被 final 修饰的类中所有的成员方法都会隐式的定义为 final 方法。 若父类中 final 方法的访问权限为 private ,则子类中不能直接继承该方法。此时可以在子类中定义相同方法名的函数&…...

HarmonyOS ArkUi Tabs+TabContent+List实现tab吸顶功能

Demo效果 Entry Component struct StickyNestedScroll {State message: string Hello WorldState arr: number[] []scroller new Scroller()StyleslistCard() {.backgroundColor(Color.White).height(72).width("100%").borderRadius(12)}build() {Scroll(this.sc…...

Hugging Face Accelerate 两个后端的故事:FSDP 与 DeepSpeed

社区中有两个流行的零冗余优化器 (Zero Redundancy Optimizer,ZeRO)算法实现,一个来自DeepSpeed,另一个来自PyTorch。Hugging FaceAccelerate对这两者都进行了集成并通过接口暴露出来,以供最终用户在训练/微调模型时自主选择其中之…...

TextField是用于在用户界面中输入文本的控件。它广泛应用于表单、搜索框、评论区等需要用户输入文字的场景

TextField是用于在用户界面中输入文本的控件。它广泛应用于表单、搜索框、评论区等需要用户输入文字的场景。以下是对TextField的详细解释,涵盖其各个方面的功能和属性。 基本属性 text 描述:TextField中当前显示的文本。用法:text: "示…...

MYSQL 四、mysql进阶 5(InnoDB数据存储结构)

一、数据库的存储结构:页 索引结构给我们提供了高效的索引方式,不过索引信息以及数据记录都是保存在文件上的,确切说时存储在页结构中,另一方面,索引是在存储引擎中实现的,Mysql服务器上的存储引擎负责对表…...

Spring企业开发核心框架-下

五、Spring AOP面向切面编程 1、场景设定和问题复现 ①准备AOP项目 项目名:Spring-aop-annotation ②声明接口 /*** - * / 运算的标准接口!*/ public interface Calculator { int add(int i, int j); int sub(int i, int j); int mul(int i, in…...

X射线底片焊缝缺陷检测

实现四种焊缝缺陷的检测和分割处理。...

直播的js代码debug解析找到protobuf消息的定义

我们都知道直播的弹幕消息是通过websocket发送的,而且是通过protobuf传输的,那么这里面传输了哪些内容,这个proto文件又要怎么定义?每个消息叫什么,消息里面又包含有哪些字段,每个字段又是什么类型&#xf…...

详细学习es6扩展运算符

ES6中的扩展运算符(Spread Operator)是一种非常方便的语法,主要用于将可迭代对象(比如数组、字符串等)展开成多个参数。以下是关于ES6扩展运算符的详细内容: 用法: 在数组字面量中展开数组&am…...

HEC-HMS水文模型教程

原文链接:HEC-HMS水文模型教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247607904&idx5&sn1a210328a3fc8f941b433674d8fe2c85&chksmfa826787cdf5ee91d01b6981ebd89deac3e350d747d0fec45ce2ef75d7cb8009341c6f55114d&token90645021…...

Spring Cloud LoadBalancer基础入门与应用实践

官网地址:https://docs.spring.io/spring-cloud-commons/reference/spring-cloud-commons/loadbalancer.html 【1】概述 Spring Cloud LoadBalancer是由SpringCloud官方提供的一个开源的、简单易用的客户端负载均衡器,它包含在SpringCloud-commons中用…...

layui在表格中嵌入上传按钮,并修改上传进度条

当需要在表格中添加上传文件按钮,并不需要弹出填写表单的框的时候,需要在layui中,用按钮触发文件选择 有一点需要说明的是,layui定义table并不是在定义的标签中渲染,而是在紧接着的标签中渲染,所以要获取实…...

14-10 AIGC 项目生命周期——第一阶段

生成式 AI 项目生命周期的整个过程类似于从范围、选择、调整和对齐/协调模型以及应用程序集成开始的顺序依赖过程。流程表明每个步骤都建立在前一步的基础上。有必要了解每个阶段对于项目的成功都至关重要。 下面的流程图重点介绍了生成式 AI 项目生命周期的第一阶段 1 — “范…...

经典小游戏(一)C实现——三子棋

switch(input){case 1:printf("三子棋\n");//这里先测试是否会执行成功break;case 0:printf("退出游戏\n");break;default :printf("选择错误,请重新选择!\n");break;}}while(input);//直到输入的结果为假,循环才会结束} …...

如何利用AI生成可视化图表(统计图、流程图、思维导图……)免代码一键绘制图表

由于目前的AI生成图表工具存在以下几个方面的问题: 大多AI图表平台是纯英文,对国内用户来说不够友好;部分平台在生成图表前仍需选择图表类型、配置项,操作繁琐;他们仍需一份规整的数据表格,需要人为对数据…...

Firefox 编译指南2024 Windows10-使用Git 管理您的Firefox(五)

1. 引言 在现代软件开发中,版本控制系统(VCS)是不可或缺的工具,它不仅帮助开发者有效管理代码的变化,还支持团队协作与项目管理。Mercurial 是一个高效且易用的分布式版本控制系统,其设计目标是简洁、快速…...

ubuntu 18 虚拟机安装(1)

ubuntu 18 虚拟机安装 ubuntu 18.04.6 Ubuntu 18.04.6 LTS (Bionic Beaver) https://releases.ubuntu.com/bionic/ 参考: 设置固定IP地址 https://blog.csdn.net/wowocpp/article/details/126160428 https://www.jianshu.com/p/1d133c0dec9d ubuntu-18.04.6-l…...

Github 上 Star 数最多的大模型应用基础服务 Dify 深度解读(一)

背景介绍 接触过大模型应用开发的研发同学应该都或多或少地听过 Dify 这个大模型应用基础服务,这个项目自从 2023 年上线以来,截止目前(2024-6)已经获得了 35k 多的 star,是目前大模型应用基础服务中最热门的项目之一…...

XStream导出xml文件

最终效果 pom依赖 <dependency><groupId>com.thoughtworks.xstream</groupId><artifactId>xstream</artifactId><version>1.4.11.1</version></dependency>代码 XStreamUtil 这个直接复制即可 import com.thoughtworks.xst…...

陪诊小程序搭建:构建便捷医疗陪诊服务的创新实践

在当今快节奏的社会&#xff0c;医疗服务与人们的生活息息相关。然而&#xff0c;在医疗体系中&#xff0c;患者往往面临着信息不对称、流程繁琐、陪伴需求得不到满足等问题。为了解决这些问题&#xff0c;我们提出了一种创新的解决方案——陪诊小程序&#xff0c;旨在为患者提…...

AI驱动命令行工具:用自然语言生成Shell命令,提升开发运维效率

1. 项目概述&#xff1a;一个能“读懂”你意图的智能命令行工具如果你和我一样&#xff0c;每天有大量时间泡在终端里&#xff0c;那么对命令行工具的效率追求几乎是永无止境的。敲命令、查参数、记路径、处理错误……这些琐碎的操作虽然基础&#xff0c;却实实在在地消耗着我们…...

LoRA模型合并实战指南:多技能融合与vLLM部署

1. 项目概述&#xff1a;LoRA模型合并的“瑞士军刀”最近在折腾大语言模型微调的朋友&#xff0c;估计对LoRA&#xff08;Low-Rank Adaptation&#xff09;这个词都不陌生。它就像给预训练好的大模型“打补丁”&#xff0c;用极小的参数量&#xff08;通常只有原模型的0.1%到1%…...

基于BLE与UriBeacon标准,打造低成本物理网页信标实践指南

1. 项目概述&#xff1a;从蓝牙信标到物理网页的进化 几年前&#xff0c;当我第一次接触iBeacon时&#xff0c;就被这种“静默广播、主动感知”的物联网交互模式吸引了。一个小小的硬件&#xff0c;不用配对&#xff0c;就能让周围的手机知道它的存在&#xff0c;并触发相应的…...

4.AI大模型-幻觉、记忆、参数-大模型底层运行机制

内容参考于&#xff1a;图灵AI大模型全栈 幻觉&#xff1a; 大模型的幻觉主要有两种&#xff0c;一种是回答的答案和问的问题不搭边&#xff0c;就是说回答的答案是乱编的&#xff0c;是没有真实性的&#xff0c;另一种是给了AI正确的资料&#xff0c;但是AI并没有根据我们给的…...

基于Codebender在线IDE快速开发Adafruit FLORA可穿戴硬件项目

1. 项目概述&#xff1a;为什么选择在线IDE来玩转可穿戴硬件&#xff1f;如果你和我一样&#xff0c;是个喜欢鼓捣硬件的创客&#xff0c;那么对Arduino、树莓派这类开发板一定不陌生。每次开始一个新项目&#xff0c;最头疼的往往不是写代码&#xff0c;而是配环境&#xff1a…...

如何分析SQL嵌套查询瓶颈_使用执行计划查看开销

应优先分析子查询的执行耗时而非行数&#xff1a;PostgreSQL看Subquery Scan的Actual Total Time&#xff0c;MySQL用EXPLAIN FORMATJSON查SUBQUERY/DERIVED的rows与filtered&#xff0c;若rows大且filtered低则索引失效。怎么看 EXPLAIN 里哪个子查询最拖后腿嵌套查询慢&#…...

ME6206A 系列低压差线性稳压器

概述ME6206A 系列是高精度、低功耗、采用 CMOS 技 术制造的正电压稳压器。这些器件提供大电流&#xff0c;具有显 著的小电压差。 该系列与低 ESR 陶瓷电容器兼容&#xff0c;限流器的折返 电路也作为短路保护输出电流限制器和输出引脚。性能特点高精度输出电压&#xff1a;1%输…...

终极指南:如何让苹果触控板在Windows上获得专业级体验

终极指南&#xff1a;如何让苹果触控板在Windows上获得专业级体验 【免费下载链接】mac-precision-touchpad Windows Precision Touchpad Driver Implementation for Apple MacBook / Magic Trackpad 项目地址: https://gitcode.com/gh_mirrors/ma/mac-precision-touchpad …...

基于大语言模型的学术论文AI阅读助手:从PDF解析到智能问答全流程解析

1. 项目概述&#xff1a;一个为学术论文阅读而生的AI助手 如果你经常需要阅读海量的学术论文&#xff0c;尤其是计算机科学、人工智能领域的英文PDF文献&#xff0c;那你一定对那种“打开一篇新论文&#xff0c;面对几十页的陌生术语和复杂公式&#xff0c;不知从何读起”的无…...

深度测评2026广州个体户核定流程精选榜单,革新个体工商户税务办理新变革

在数字经济浪潮席卷之下&#xff0c;个体工商户税务办理正面临前所未有的变革压力与机遇窗口。2026年的广州&#xff0c;作为电商与直播产业的高地&#xff0c;其个体户核定流程的效率与合规性&#xff0c;已成为衡量区域营商环境的试金石。然而&#xff0c;一个深层的价值悖论…...