文章目录
前言
速记
- 被final修饰的类不可以被继承
- 被final修饰的方法不可以被重写
- 被final修饰的变量不可以被改变。如果修饰引用,那么表示引用不可变,引用指向的内容可变。
- 被final修饰的方法,JVM会尝试将其内联,以提高运行效率(早期java)
- 被final修饰的常量,在编译阶段会存入常量池中。
一、final修饰类
当用final修饰一个类时,表明这个类不能被继承。也就是说,如果一个类你永远不会让他被继承,就可以用final进行修饰。final类中的成员变量可以根据需要设为final,但是要注意final类中的所有成员方法都会被隐式地指定为final方法。
在使用final修饰类的时候,要注意谨慎选择,除非这个类真的在以后不会用来继承或者出于安全的考虑,尽量不要将类设计为final类。
简单来说就是字面意思的最终类。
二、final修饰方法
1.被final修饰的方法不可以被重写
当然如果你用final修饰一个private方法,然后继承类后写一个一样的方法,会出现看似重写的情况,但这只是自欺欺人。因为这种方法下,你前面那个final方法本来就没有被继承,你只是重新写了一个一样的方法,
public class Test {
private final void say(){
System.out.println