Java Final关键字

Java中的final是一个Java的保留关键字可以应用于变量,方法,与类,一旦引用final关键字来修饰一个引用,便无法对该引用进行修改。

final变量
  • 对一个变量前加上final关键字之后,该变量即为final变量,对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象。
public static final int capacity=0;
capacity++;(cannot assign a value to final variable 'capacity')
  • 对final变量进行修改的话会报编译错误
final方法
  • 使用final关键字来修饰方法,即代表此方法不可以被子类的方法重写,如果你认为一个方法的功能已经足够完整了,子类中不需要改变的话,你可以声明此方法为final。final方法比非final方法要快,因为在编译的时候已经静态绑定了,不需要在运行时再动态绑定。
public class ClassRoom {
  final public void printInfo(){
      System.out.pringline(ClassRoom);     
  }
}

public class MusicClassRoom extends ClassRoom {
  public void printInfo(){
//overridden method is final
  }
}
  • 重写父类中的final方法时会报编译错误
final类
  • 使用final关键字来修饰一个类,即代表类的功能很完善,不需要被继承,也无法被继承。
public final class ClassRoom {
    final public void printInfo(){
    }
}
public class MusicClassRoom extends ClassRoom {
// Cannot inherit from final 'ClassRoom'
}
  • 继承一个final类的时候会报编译错误
    Tips
  1. final类中的所有成员方法都会被隐式地指定为final方法
  2. private方法会隐式指定为final方法
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 含义 在不同使用场景下,有细微的区别,总体是指的是"这是不可变的" final的保留关键字,可以声明成员变量...
    ting723阅读 485评论 0 2
  • Java final关键字修饰变量、类、方法时,表示该变量/类/方法是无法被修改的,通常使用final关键字主要出...
    LilacZiyun阅读 765评论 0 2
  • java中final关键字在平时开发中用到的不多也不算少,大多均用在修饰类的变量上,很少用final去对一个类进行...
    打不开的回忆阅读 1,106评论 1 50
  • 在Java 中,final关键字可以修饰 类,方法,和变量(包含成员变量和局部变量)。 final 类 当用fin...
    伊凡的一天阅读 272评论 0 2
  • 孙恶霸叼着竹签,衣服甩在肩头,腆着个肚子正要走出小饭馆,没想到被店老板拦了下来。 店老板弯着腰递上一壶小酒,粲笑着...
    方小块的故事阅读 356评论 0 0