首页 > 代码库 > Java和C++中final关键字的作用和区别
Java和C++中final关键字的作用和区别
Java中final关键字的作用:
a.作用于类:不允许扩展该类,即不能用该类来定义子类。
b.作用于方法:子类不能覆盖这个方法,但是可以被继承。
早期Java中,有程序员利用final来避免动态绑定带来的系统开销。现在这个功能主要由编译器来实现。
c.作用于域:构造对象之后不能改变该域的值。
d.作用于函数参数:可以读取,但是不能改变该参数。
注意:final类的所有方法自动成为final的,不包括域。
将方法或类声明为final主要目的是确保它们在子类中不会改变语义。
String类就是一个final类,不允许定义String的子类。如果有一个String的引用,它引用的一定是一个String对象,而不可能是其他类的对象。
C++中final关键字是C++11新增的,作用为:
a.作用于类:阻止一个类成为基类,即不允许扩展该类。
b.作用于虚方法:组织派生类覆盖此虚方法。
Java和C++中final关键字的作用和区别
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。