黑马程序员技术交流社区
标题:
怎样才能让一个类不能被继承、重写、覆盖?
[打印本页]
作者:
张周飞
时间:
2014-6-7 22:59
标题:
怎样才能让一个类不能被继承、重写、覆盖?
本帖最后由 张周飞 于 2014-6-13 10:39 编辑
求各位大神 指教哇{:3_66:}----怎样才能让一个类不能被继承、重写、覆盖???
作者:
Boiled_Water
时间:
2014-6-7 23:12
类上加上一个修饰符final
作者:
☆枫の云
时间:
2014-6-7 23:13
类被final修饰就不能被继承,覆写是针对方法而言的,同样,被final修饰的方法是不能被子类覆写的。
如果一个类不允许其子类覆盖某个方法,则可以把这个方法声明为final方法。
使用final方法的原因有二:
第一、把方法锁定,防止任何继承类修改它的意义和实现。
第二、高效。编译器在遇到调用final方法时候会转入内嵌机制,大大提高执行效率。
作者:
钟成军
时间:
2014-6-7 23:29
类被重写、覆盖?只有方法有重写(覆盖和重写是一个意思)吧,为了让一个类不被继承,可以用修饰符final修饰
作者:
GoodBoy123
时间:
2014-6-7 23:52
只要不被继承就谈不上重写和重载。不让这个类被继承的方法就是加上类修饰符final
作者:
夏季熬成了秋
时间:
2014-6-7 23:55
给类前面加一个final 修饰符就哦了.
作者:
tangchuanping
时间:
2014-6-8 00:10
类用final修饰就可以
作者:
满面春风
时间:
2014-6-8 00:38
修改类的访问权限,可用final
作者:
华绪海
时间:
2014-6-8 00:45
可以直接用最终限定符final去修饰即可
作者:
yinxjfly
时间:
2014-6-8 02:22
一个类不被继承有两种方式,
1,私有构造器,只对外提供一个获得实例的方法(单例模式,严格的说这种方式不算的)
2,类被final修饰,终态类不能被继承,只能new对象!
作者:
谭荣强
时间:
2014-6-8 02:27
你这问题有意思。
类可以被继承。但是类没有覆盖,重载之说。只有方法才有覆盖,重载的说法。
覆盖和重写一个意思:你是不是想说覆盖和重载。override overload
类不能被继承:fiinal关键字,如果是单例类(构造函数私有)也可以
方法不能覆盖:fiinal关键字
方法不能被重载:不知道
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2