Java中的final关键字详解及实例
作者:小猪快跑22 发布时间:2023-05-26 11:09:46
标签:Java,final,关键字
Java中的final关键字
1、修饰类的成员变量
这是final的主要用途之一,和C/C++的const,即该成员被修饰为常量,意味着不可修改。
上面的代码对age进行初始化后就不可再次赋值,否则编译时会报类似上图的错误。
如果修饰的是引用类型的变量,那么初始化后就不能让他指向另一个对象,如下图所示
2.修饰方法
用final关键字修饰的方法是不能被该类的子类override(重写),因此,如果在想明确禁止 该方法在子类中被覆盖的情况下才将方法设置为final的。
注:类的private方法会隐式地被指定为final方法。
public class Person {
public Person() {
// TODO Auto-generated constructor stub
}
public final void show(){
}
}
public class Man extends Person{
public void show( ){
}
}
上面的Man类就会报如下的编译错误## 标题 ##
Cannot override the final method from Person
3.修饰类
当用final修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
来源:http://blog.csdn.net/zhujiangtaotaise/article/details/50237067


猜你喜欢
- 升级年初了,我们打算升级下apg,这样之后就拥抱下jetpack compose了!!想用comopse有两个必选项agp7.0和kotli
- 本文实例为大家分享了C#泛型类创建与使用的具体代码,供大家参考,具体内容如下using System;using System.Collec
- 本文实例为大家分享了Flutter实现微信朋友圈功能的具体代码,供大家参考,具体内容如下今天给大家实现一下微信朋友圈的效果,下面是效果图下面
- 本节我们来探讨如何使用Feign构造多参数的请求。笔者以GET以及POST方法的请求为例进行讲解,其他方法(例如DELETE、PUT等)的请
- 反射方式获取JPA Entity属性和值在记录日志或者调试的时候,往往需要输出数据库查询或者写入的值,或者在接 * 互的时候,可能需要将实体转
- Java 中的 BIO、NIO和 AIO 理解为是 Java 语言对操作系统的各种 IO 模型的封装。程序员在使用这些 API 的时候,不需
- 本文实例讲述了C#使用linq查询大数据集的方法。分享给大家供大家参考。具体如下:using System;using System.Col
- redis redisson 集合操作相关类及接口Rlist:链表public interface RList<V> exten
- 一、概述最近需要用进度条,秉着不重复造轮子的原则,上github上搜索了一番,看了几个觉得比较好看的ProgressBar,比如:daima
- 话不多说,请看代码:public FileResult GetExcelFile() {  
- 本文实例讲述了Java基于正则实现的日期校验功能。分享给大家供大家参考,具体如下:private void checkDate() thro
- session超时退到登录页面最近发现使用的工程居然没有session超时机制,功能太欠缺了,现在把追加方法分享出来,里面有一些坑,大家自由
- 缓存淘汰算法在高并发、高性能的质量要求不断提高时,我们首先会想到的就是利用缓存予以应对。第一次请求时把计算好的结果存放在缓存中,下次遇到同样
- 如何查看 Java 的字节码文件?在 Java 中,字节码文件.class实际上是二进制文件,并不能直接查看。要想查看,我们只能通过反编译对
- 头文件:#include<memory.h>1.memcpy作用:内存拷贝函数原型:void *memcpy( void *de
- java.lang.OutOfMemoryError处理错误java.lang.OutOfMemoryError异常解决方法原因: 常见的有
- 本文实例讲述了Android控件之ListView用法。分享给大家供大家参考。具体如下:示例一:在android开发中ListView是比较
- 拆分实现流程请看下面这张图首先我们得对线程池进行一个功能拆分Thread Pool 就是我们的线程池,t1,t2,t3代表三个线程Block
- 前言上篇博客我们介绍了如何创建一个spring项目,并且如何的存、取对象,介绍了相关方法,那么本篇博客将接着上篇博客的内容介绍如何更加简单的
- 实践过程效果代码public partial class Form1 : Form {