欢迎光临
我们一直在努力

java中不能继承的类有哪些?

在Java中,只要是被定义为final的类,也可以说是被final修饰的类,就是不能被继承的。

因为jdk的开发者认为,有一些最基本的类没要必要对开发者开放,如果用户继承时操作有误,很可能引入很多问题。为了防止用户对基本类进行相应的扩展,也体现了java设计过程中的开闭原则,最终将这些类设计成为final的。

这是final的规定:

当你将final用于类身上时,一个final类是无法被任何人继承的,那也就意味着此类在一个继承树中是一个叶子类,并且此类的设计已被认为很完美而不需要

进行修改或扩展。对于final类中的成员,你可以定义其为final,也可以不是final。而对于方法,由于所属类为final的关系,自然也就成了final型的。你也可以明确的给final

类中的方法加上一个final,但这显然没有意义。

java中常见的不能被继承的类有如下:

String,

StringBuffer,

StringBuilder,

基本类型的包装类如Double,Integer,Long

等等。

我们来看看这个String类是如何被定义的:

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。