Java基础-String类能被继承吗,为何

不能够,由于String类有final修饰符,而final修饰的类是不能被继承的,实现细节不容许改变。设计

关于final修饰符,介绍以下:继承

根据程序上下文环境,Java关键字final有“这是没法改变的”或者“终态的”含义,它能够修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而须要阻止改变:设计或效率。 
  final类不能被继承,没有子类,final类中的方法默认是final的。 
  final方法不能被子类的方法覆盖,但能够被继承。 
  final成员变量表示常量,只能被赋值一次,赋值后值再也不改变。 
  final不能用于修饰构造方法。 
  注意:父类的private成员方法是不能被子类方法覆盖的,所以private类型的方法默认是final类型的。编译器

若是一个类不容许其子类覆盖某个方法,则能够把这个方法声明为final方法。 
  使用final方法的缘由有二: 
  第1、把方法锁定,防止任何继承类修改它的意义和实现。 
  第2、高效。编译器在遇到调用final方法时候会转入内嵌机制,大大提升执行效率。

编译

相关文章
相关标签/搜索