zoukankan      html  css  js  c++  java
  • final关键字

    1. 前言

    final作为java核心关键字之一,其重要性不言而喻。在Java中,final关键字可以用来修饰类、方法和变量。

    2. final作用场景

    final类

    定义:当用final修饰一个类时,表明这个类不能被继承。也就是说,如果你不想一个类被继承时(如String类),就可以用final进行修饰。要注意final类中的所有成员方法都会被隐式地指定为final方法(来源:https://www.cnblogs.com/dolphin0520/p/3736238.html,个人认为一个无法被继承的类,其方法自然是无法被重写的,此处涉及到知识点:final修饰的方法是无法被重写的)。

    应用场景:从安全性考虑,不希望此类被继承,不希望方法被重写。

    final方法

    定义:当用final修饰一个方法时,此方法是不能被重写的(@override);如果我们用final修饰方法,假如方法所属的类被继承,方法将不能在子类中被重写。

     应用场景:禁止继承的类修改此方法行为,可将方法定义为final。

    PS:类中所有的private方法都隐式的指定为final的,private修饰的方法,继承时也是不可被重写的。

    final变量

    对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象,也就是不可更改其内存中的引用地址。

    final定义的基本数据类型变量是不可被重新赋值的。

    final 定义的成员变量不能被重新指向新的引用,但是可以修改其数据,如list数组,虽然不能被指向新的引用对象,但是可add数据。

    参考文献

    https://www.cnblogs.com/dolphin0520/p/3736238.html

  • 相关阅读:
    P5304旅行者(比bk201还要流氓的解法)
    考试T1护花
    考试T2修剪草坪
    考试T3麻将
    账号密码
    T7
    P2885 [USACO07NOV]电话线Telephone Wire
    P4965 薇尔莉特的打字机
    P1505 [国家集训队]旅游
    T2
  • 原文地址:https://www.cnblogs.com/loren-Yang/p/13380318.html
Copyright © 2011-2022 走看看