[英]Overridable method call in constructor
我有一个类U,并且在该类的构造函数中,我将其称为可重写的方法,它是公共的。 NetBeans警告我: Overridable method call in constructor
但是,由于类U没有子类,所以我不会在项目中覆盖该方法。可以这样保留它吗? ....在这种情况下在构造函数中调用可重写方法?
这不是错误。 您可以忽略它。
如果要使编译器满意,请将方法或整个类定为final 。
这是一个警告,而不是错误,因此您可以这样保留它。 但是,如果您要发布此代码,则有人可以扩展您的类U,覆盖该方法,并带来很多麻烦。
如前所述,您可以“忽略”警告。
但是,这样做的风险自负,因为以后可能会出现错误。 警告的原因是,编译器无法证明对“ this”的引用不会逃脱构造函数。 这可能会导致错误,因为所创建的对象尚未完全构建,因此该对象可能处于无效状态。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.