关于java:面试官说一下final关键字和final的4种用法

44次阅读

共计 861 个字符,预计需要花费 3 分钟才能阅读完成。

重要阐明:本篇为博主《面试题精选 - 根底篇》系列中的一篇,查看系列面试文章 请关注我
Gitee 开源地址:https://gitee.com/mydb/interview

final 定义

final 翻译成中文是“最终”的意思,它是 Java 中一个常见关键字,应用 final 润饰的对象不容许批改或替换其原始值或定义。

比方类被 final 润饰之后,就不能被其余类继承了,如下图所示:

final 的 4 种用法

final 的用法有以下 4 种:

  1. 润饰类
  2. 润饰办法
  3. 润饰变量
  4. 润饰参数

1. 润饰类

final class Animal {}


阐明:被 final 润饰的类不容许被继承,示意此类设计的很完满,不须要被批改和扩大。

2. 润饰办法

public class FinalExample {public final void sayHi() {System.out.println("Hi~");
    }
}


阐明:被 final 润饰的办法示意此办法提供的性能曾经满足以后要求,不须要进行扩大,并且也不容许任何从此类继承的类来重写此办法。

3. 润饰变量

public class FinalExample {
    private static final String MSG = "hello";
    //......
}


阐明:当 final 润饰变量时,示意该变量一旦被初始化便不能够被批改。

4. 润饰参数

public class FinalExample {public void sayHi(final String name) {System.out.println("Hi," + name);
    }
}


阐明:当 final 润饰参数时,示意此参数在整个办法内不容许被批改。

final 作用

应用 final 润饰类能够避免被其余类继承,如 JDK 代码中 String 类就是被 final 润饰的,从而避免被其余类继承,导致外部逻辑被毁坏。

String 类局部源码如下:

总结

final 是 Java 中常见的一个关键字,被它润饰的对象不容许批改、替换其原始值或定义。final 有 4 种用法,能够用来润饰类、办法、变量或参数。

关注公众号:Java 面试真题解析,查看更多 Java 面试题。

正文完
 0