首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

怎么确保调用super.XXX()

2012-12-28 
如何确保调用super.XXX()Android里面有个异常,叫SuperNotCalledException,如果子类没有通过super.XXX()调

如何确保调用super.XXX()
Android里面有个异常,叫SuperNotCalledException,如果子类没有通过super.XXX()调用父类的方法,则报此异常。请问如何实现类似的功能,只要能确保调用super.XXX()就行。 
[解决办法]
似乎Java中还真不太容易实现这种控制。构造函数是编译时就控制了,但普通函数并没有此类约束。

需要主调程序跟父类方法之间提前做了特殊约定才有可能做到,比如父类方法被调用后置某个标志位;主调函数最后去检查该标志位啥的;但也很难防范子类通过各种手段去掩盖它。

热点排行