Java-final

news2024/9/22 23:28:22

【1】修饰变量;

1.public class Test {
2.    //这是一个main方法,是程序的入口:
3.    public static void main(String[] args) {
4.        //第1种情况:
5.        //final修饰一个变量,变量的值不可以改变,这个变量也变成了一个字符常量,约定俗称的规定:名字大写
6.        final int A = 10;//final修饰基本数据类型
7.        //A = 20; 报错:不可以修改值
8.        //第2种情况:
9.        final Dog d = new Dog();//final修饰引用数据类型,那么地址值就不可以改变
10.        //d = new Dog(); -->地址值不可以更改
11.        //d对象的属性依然可以改变:
12.        d.age = 10;
13.        d.weight = 13.7;
14.
15.        //第3种情况:
16.        final Dog d2 = new Dog();
17.        a(d2);
18.        //第4种情况:
19.        b(d2);
20.
21.    }
22.    public static void a(Dog d){
23.        d = new Dog();
24.    }
25.    public static void b(final Dog d){//d被final修饰 ,指向不可以改变
26.        //d = new Dog();
27.    }
28.}

【2】修饰方法;

final修饰方法,那么这个方法不可以被该类的子类重写:

【3】修饰类; 

final修饰类,代表没有子类,该类不可以被继承:

一旦一个类被final修饰,那么里面的方法也没有必要用final修饰了(final可以省略不写)

【4】案例:JDK提供的Math类:看源码发现:

(1)使用Math类的时候无需导包,直接使用即可:

(2)Math类没有子类,不能被其他类继承了

(3)里面的属性全部被final修饰,方法也是被final修饰的,只是省略不写了

原因:子类没有必要进行重写。

(4)外界不可以创建对象:

Math m = new Math();

(5)发现Math类中的所有的属性,方法都被static修饰

那么不用创建对象去调用,只能通过类名.属性名  类名.方法名 去调用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1230426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Yolov8部署——vs2019遇到的问题

Yolov8部署——vs2019遇到的问题 问题一: 默认库"LIBCMT"与其他库的使用冲突 解决方法:选择自己的项目右键属性——c/c——代码生成——运行库(多线程(/MT) 问题二: 文件包含在偏移0x18处开始…

水库大坝安全监测系统守护水利工程安全的坚实后盾

WX-WY1 随着社会经济的发展和科技的进步,水利工程的安全问题越来越受到人们的关注。水库大坝作为水利工程的重要组成部分,其安全状况直接关系到周边地区人民的生命财产安全和生态环境。因此,建立一个高效、可靠的水库大坝安全监测系统至关重要…

苹果手机内嵌h5如何禁止全局弹性效果

简单模拟一个场景&#xff0c;这是一个商城的商品分类页面&#xff0c;是一个左右布局&#xff0c;左面是所有的分类&#xff0c;右面是展示这个分类的商品&#xff0c;这里为了简单就只写一个demo了。 <!DOCTYPE html> <html lang"en"><head><…

求臻医学受邀参加第三届基因检测行业发展高峰论坛并斩获三项荣誉

2023年11月18日&#xff0c;备受瞩目的第三届基因检测行业发展高峰论坛暨年度评选活动颁奖典礼在广州圆满召开。作为基因检测领域的佼佼者&#xff0c;求臻医学应邀参加了此次高峰论坛并斩获了基因检测行业年度风云企业奖、基因检测行业最具投资价值奖、基因检测行业最佳产品奖…

使用npm发布自己的组件库

在日常开发中&#xff0c;我们习惯性的会封装一些个性化的组件以适配各种业务场景&#xff0c;突发奇想能不能建一个自己的组件库&#xff0c;今后在各种业务里可以自由下载安装自己的组件。 一. 项目搭建 首先直接使用vue-cli创建一个vue2版本的项目&#xff0c;并下载好ele…

Idear 中签出git项目分支为灰色

--签出git上的项目 git clone git项目地址 --查看目录 $ dir --查看分支 $ git branch -a --签出分支 $ git checkout origin/v1.0 签出后&#xff0c;使用idear打开项目&#xff0c;项目关联git信息

PaaS、 IaaS 和 SaaS 的区别

我感觉我有点捂了 iaas&#xff0c;paas&#xff0c;和saas的区别&#xff0c;以及他们啥意思了 简单说就是&#xff0c;一个公司有很多项目&#xff0c;要管理这些项目&#xff0c;每个项目都有很多组成部分需要管理的地方&#xff0c;例如&#xff0c;存储代码&#xff0c;例…

cmake+OpenCV4.8.0+contrib4.8.0+cuda 12.2编译踩坑

cmakeOpenCV4.8.0contrib4.8.0cuda 12.2编译踩坑 准备工具 cmake &#xff08;去官网下载&#xff09;OpenCV 我下载的是官网发布最新的稳定版本对应的源码&#xff0c;官网目前是4.8.0&#xff0c;github下一个&#xff08;连不上的可以网上找找资源或者科学上网&#xff09…

PHM对复杂控制系统的状态监控及故障诊断

背景 该型号复杂控制系统是由7台各种车辆组成的复杂电子、机械复合系统&#xff0c;这些系统通过数据总线连接在一起&#xff0c;总线数据中既有控制指令数据也有执行响应数据或BIT数据&#xff0c;这些数据可以作为系统健康状态评估或故障诊断的依据&#xff0c;然而在以往类…

【机器学习基础】K-Means聚类算法

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;相对完整的机器学习基础教学&#xff01; ⭐特别提醒&#xff1a;针对机器学习&#xff0c;特别开始专栏&#xff1a;机器学习python实战…

外汇天眼:每周都能赢奖金?

最近&#xff0c;有不少外汇天眼的用户询问天眼客服&#xff0c;每周举办的外汇天眼模拟比赛是真的能拿到奖金吗&#xff1f;答案是&#xff1a;是的&#xff01;表现优秀者可瓜分350美金&#xff0c;如果周周参加&#xff0c;周周获得名次&#xff0c;那这个奖金也是能叠加获得…

Re50:读论文 Large Language Models Struggle to Learn Long-Tail Knowledge

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称&#xff1a;Large Language Models Struggle to Learn Long-Tail Knowledge ArXiv网址&#xff1a;https://arxiv.org/abs/2211.08411 官方GitHub项目&#xff08;代码和实体&#xff09;&#xf…

GCC 学习

GCC Resource Center for GCC Internalshttps://www.cse.iitb.ac.in/grc/这是个不错资料网站&#xff0c;有兴趣的可以了解下

2023年【A特种设备相关管理(电梯)】考试报名及A特种设备相关管理(电梯)考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 A特种设备相关管理&#xff08;电梯&#xff09;考试报名参考答案及A特种设备相关管理&#xff08;电梯&#xff09;考试试题解析是安全生产模拟考试一点通题库老师及A特种设备相关管理&#xff08;电梯&#xff09;操…

软件数字签名是什么?软件数字签名有什么作用?

在当今互联网时代&#xff0c;网络安全威胁日益增加&#xff0c;恶意软件层出不穷&#xff0c;为了防止下载到恶意软件&#xff0c;用户在下载软件时都会确认其是安全可信的。由此&#xff0c;企业需要证明其发布的软件真实可信且未被篡改&#xff0c;如何证明这一点呢&#xf…

数据资产入表规划演示(无形资产路线)

数据“入表”有利于企业盘活数据资产、数据资产的交易定价等&#xff0c;通过数据资产“入表”可以加快数据要素市场化配置&#xff0c;为下一步全国数据市场要素市场建立提供基础支撑。数据资产入表&#xff0c;可以拆解为三步&#xff0c;第一步是入表形成原始资产&#xff0…

修改el-radio-group样式,自定义单选组件

修改el-radio-group样式,自定义单选组件 自定义组件 MyRadioGroup.vue <template><div class"btnsBox"><el-radio-group v-model"activeIndex" change"handleClick"><el-radio-buttonv-for"(item, index) in list&qu…

工作电压范围,转换速率高,相位补偿等特性的双运算放大器芯片D4510的描述

D4510是一块双运算放大器&#xff0c;具有较宽的工作电压范围&#xff0c;转换速率高&#xff0c;相位补偿等特性。电路能在低电源电压下:工作,电源电压范围:双电源为1V-3.5V和单电源电压为2V~7V。 主要特点&#xff1a; ● 低电压工作 ● 转换速率高 ● 动态输…

STM32——STM32Cubemx的学习使用总结

文章目录 一、简介二、STM32Cube IDE与MX区别&#xff1f;三、界面介绍和使用四、使用整体框架 一、简介 STM32CubeMX是一个图形化工具&#xff0c;可以非常容易地配置STM32微控制器和微处理器&#xff0c;以及为ArmCortex-M 内核或部分 Linux 设备树生成相应的初始化C代码&…

网站被攻击怎么办?德迅云安全SCDN为您保驾护航

安全加速&#xff08;Secure Content Delivery Network&#xff0c;SCDN&#xff09;是德迅云安全推出的集分布式DDoS防护、CC防护、WAF防护、BOT行为分析为一体的安全加速解决方案。已使用内容分发网络&#xff08;CDN&#xff09;或全站加速网络&#xff08;ECDN&#xff09;…