恶意代码漏洞-可能通过返回对可变对象的引用来公开内部表示

嗨,我收到了以下违规信息:

恶意代码漏洞-可能通过返回对可变对象的引用来公开内部表示

在我的代码中,我这样写

public String[] chkBox() {

return chkBox;

}

我们如何解决它。

回答:

当错误消息指出时,您正在返回内部状态(chkBox-很可能是对象内部状态的一部分,即使您没有显示其定义)

如果您-例如-

String[] box = obj.chkBox();

box[0] = null;

由于数组对象和所有Java对象一样都是通过引用传递的,因此这也将更改存储在对象内部的原始数组。

您最可能想解决的问题很简单

return (String[])chkBox.clone();

它返回数组的副本,而不是实际的数组。

以上是 恶意代码漏洞-可能通过返回对可变对象的引用来公开内部表示 的全部内容, 来源链接: utcz.com/qa/399604.html

回到顶部