iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Java中的final关键字使用方式
  • 707
分享到

Java中的final关键字使用方式

2024-04-02 19:04:59 707人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、final概述二、使用方式修饰类修饰方法修饰变量局部变量—引用类型成员变量一、final概述 子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随

一、final概述

子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承api中提供的类,改写其内容呢?显然这是不合适的。为了避免这种随意改写的情况,Java提供了final 关键字,用于修饰不可改变内容。
final: 不可改变。可以用于修饰类、方法和变量。

  • 类:被修饰的类,不能被继承。
  • 方法:被修饰的方法,不能被重写。
  • 变量:被修饰的变量,不能被重新赋值。

二、使用方式

修饰类

格式如下:

final class 类名 {
}

查询API发现像 public final class String 、public final class Math 、public final class Scanner
等,很多我们学习过的类,都是被final修饰的,?目的就是供我们使用,而不让我们所以改变其内容

注意:如果一个类被final修饰那么这个类不能有任何的子类。一个类如果是final的,那么其中所有的成员方法都无法进行覆盖重写(因为没子类。)

修饰方法

格式如下:

修饰符 final 返回值类型 方法名(参数列表){
    //方法体
}

重写被 final 修饰的方法,编译时就会报错。

对于类、方法来说,abstract关键字和final关键字不能同时使用,因为矛盾。有抽象方法的abstract类被继承时,其中的方法必须被子类Override,而final不能被Override。

修饰变量

局部变量—基本类型

基本类型的局部变量,被final修饰后,只能赋值一次,不能再更改。

代码如下:

public class FinalDemo1 {
    public static void main(String[] args) {
        // 声明变量,使用final修饰
        final int a;
        // 第一次赋值
        a = 10;
        // 第二次赋值
        a = 20; // 报错,不可重新赋值
        // 声明变量,直接赋值,使用final修饰
        final int b = 10;
        // 第二次赋值
        b = 20; // 报错,不可重新赋值
    }
}

思考,如下两种写法,哪种可以通过编译?

写法1:

final int c = 0;
for (int i = 0; i < 10; i++) {
    c = i;
    System.out.println(c);
}

写法2:

for (int i = 0; i < 10; i++) {
    final int c = i;
    System.out.println(c);
}

根据 final 的定义,写法1报错!写法2,为什么通过编译呢?因为每次循环,都是一次新的变量c。这也是大家需要注意的地方。

局部变量—引用类型

引用类型的局部变量,被final修饰后,只能指向一个对象,地址不能再更改。但是不影响对象内部的成员变量值的修改,

代码如下:

成员变量

成员变量涉及到初始化的问题,初始化方式有两种,只能二选一:
显式初始化:

public class User {
    final String USERNAME = "张三";
    private int age;
}

构造方法初始化:

public class User {
    final String USERNAME ;
    private int age;
    public User(String username, int age) {
        this.USERNAME = username;
        this.age = age;
    }
}

到此这篇关于Java中的final关键字使用方式的文章就介绍到这了,更多相关Java final 内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java中的final关键字使用方式

本文链接: https://www.lsjlt.com/news/151397.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java中的final关键字使用方式
    目录一、final概述二、使用方式修饰类修饰方法修饰变量局部变量—引用类型成员变量一、final概述 子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随...
    99+
    2022-11-13
  • 关于java中final关键字的使用方法详解
    一、修饰类被final修饰的类不能被子类继承。//父类Animal public final class Animal{ private int age; //年龄 private String var; //品种 public...
    99+
    2015-04-20
    java final 关键字 使用方法 详解
  • Java中如何使用final关键字
    Java中如何使用final关键字,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 一.final关键字的基本用法  在Java中,final关键字可以用来修饰类、方法和变量...
    99+
    2023-06-19
  • java中的final关键字怎么使用
    在Java中,final关键字可以用于修饰类、方法和变量。1. final修饰类:final修饰的类是不可被继承的,即该类不能有子类...
    99+
    2023-08-24
    java final
  • Java中的final关键字如何使用
    这篇文章主要讲解了“Java中的final关键字如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中的final关键字如何使用”吧!一、final概述子类可以在父类的基础上改写父...
    99+
    2023-07-02
  • Java中final关键字和final的4种用法
    目录1、final 定义2、final 的 4 种用法2.1.修饰类2.2.修饰方法2.3.修饰变量2.4.修饰参数3、final 作用 1、final 定义 final 翻译成中文...
    99+
    2022-11-12
  • java final关键字怎么使用
    这篇文章主要介绍“java final关键字怎么使用”,在日常操作中,相信很多人在java final关键字怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java final关键字怎么使用”的疑惑有所...
    99+
    2023-07-04
  • 详解Java中的final关键字
    目录概述使用方式修饰类修饰方法修饰变量概述 子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承API中提供的类,改写其内容呢?显然这是不合适的。为了避免这种...
    99+
    2022-11-13
    Java final关键字 Java final
  • 怎样用Java final 关键字
    怎样用Java final 关键字,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。下面好好地讲一讲 final 关键字,也希望给更多的小伙伴一些帮助。尽管继承可以让我们重用现有代...
    99+
    2023-06-03
  • Java中final关键字和final的四种用法实例
    目录final定义final的四种用法1. 修饰类2. 修饰方法3. 修饰变量4. 修饰参数final作用总结final定义 final翻译成中文的意思是 “最终&rdq...
    99+
    2023-02-06
    java中final关键字的用法 final有哪些用法 final java关键字
  • Java中的Final关键字的用法介绍
    这篇文章主要介绍“Java中的Final关键字的用法介绍”,在日常操作中,相信很多人在Java中的Final关键字的用法介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中的Final关键字的用法介绍...
    99+
    2023-06-16
  • Java中final关键字的作用是什么
    这篇文章主要讲解了“Java中final关键字的作用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中final关键字的作用是什么”吧!final关键字的作用final关键字可以...
    99+
    2023-06-20
  • final与static关键字如何在Java中使用
    本篇文章给大家分享的是有关final与static关键字如何在Java中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、final   &n...
    99+
    2023-05-31
    java static final
  • PHP中final关键字如何使用
    今天就跟大家聊聊有关PHP中final关键字如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在PHP中类的继承是使用最多的一个编程特性,我们可以创建一个基类(父类)然后在这其中...
    99+
    2023-06-17
  • java final 和instanceof 关键字的区别
    final 可以适用的范围:修饰类:使用这种修饰符的类无法被继承 修饰函数:被修饰的不能被重写 修饰属性:1.final修饰的成员变量是常量,值不能被修改  &n...
    99+
    2022-11-15
    java final instanceof
  • Java关键字final的示例分析
    小编给大家分享一下Java关键字final的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、常见问题所有的final修饰的字段都是编译期常量吗如何理解p...
    99+
    2023-06-15
  • Java中static关键字的使用方式
    这篇文章主要介绍“Java中static关键字的使用方式”,在日常操作中,相信很多人在Java中static关键字的使用方式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中static关键字的使用方式...
    99+
    2023-06-20
  • 深入浅析Java中的this、final关键字
    这篇文章给大家介绍深入浅析Java中的this、final关键字,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。this关键字this引用对象自身。它也可以在构造方法内部用于调用同一个类的其他构造方法。 隐藏的静态变量可...
    99+
    2023-05-31
    java this final
  • Java中的final关键字详解及实例
    Java中的final关键字1、修饰类的成员变量 这是final的主要用途之一,和C/C++的const,即该成员被修饰为常量,意味着不可修改。 上面的代码对age进行初始化后就不可再次赋值,否则编译时会报类似上图的错误。 如果修...
    99+
    2023-05-31
    java final 关键字
  • JMM中的final关键字解析
    本篇内容介绍了“JMM中的final关键字解析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!与前面介绍的锁和volatile相比较,对fin...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作