java未使用的形式参数:避免未使用的构造函数参数,如';上';
我们有一个名为sonar的应用程序来分析代码,以便进行正确的编码实践。它指出的一个违规行为是:未使用的形式参数:避免未使用的构造函数参数,如“upper”java未使用的形式参数:避免未使用的构造函数参数,如';上';,java,sonarqube,Java,Sonarqube,我们有一个名为sonar的应用程序来分析代码,以便进行正确的编码实践。它指出的一个违规行为是:未使用的形式参数:避免未使用的构造函数参数,如“upper” //Private inner class to set the input to a max length. public class TextLimiter extends PlainDocument { private int limit; public TextLimiter(int limit) { super()
//Private inner class to set the input to a max length.
public class TextLimiter extends PlainDocument
{
private int limit;
public TextLimiter(int limit)
{
super();
this.limit = limit;
}
TextLimiter(int limit, boolean upper)
{
super();
this.limit = limit;
}
public void insertString(int offset, String str, AttributeSet attr)
throws BadLocationException
{
if (str == null)
{
return;
}
if ((getLength() + str.length()) <= limit)
{
super.insertString(offset, str, attr);
}
}
}
//将输入设置为最大长度的私有内部类。
公共类TextDocument
{
私有整数限制;
公共文本限制器(整数限制)
{
超级();
这个极限=极限;
}
TextLimiter(整数限制,布尔上限)
{
超级();
这个极限=极限;
}
公共void insertString(整数偏移量、字符串str、属性集attr)
抛出BadLocationException
{
如果(str==null)
{
返回;
}
如果((getLength()+str.length())您可以通过使用该参数来解决此问题,如下所示:
public TextLimiter(int limit) {
this(limit, false);
}
TextLimiter(int limit, boolean upper) {
super();
if (upper) {
this.limit = limit;
} else {
this.limit = -limit;
}
}
这只是一个如何使用upper
的示例。在不知道类背后的目的的情况下,无法做出决定。如果您不使用upper参数,我认为您不应该仅仅因为它在原始代码中就保留它。要停止关于重复代码的警告,只需删除TextLimiter即可(整数限制,布尔上限)
和keep公共文本限制(整数限制)
使用形式参数?upper
的作用是什么?你什么都不用做。我不确定。但是如果我删除upper,我会得到一个重复的方法错误。老实说,我是从网络上得到的代码,有人在网络上编写了一个类来限制可以写入文本字段的文本量。@user1158745当然可以。它会重复e另一个构造函数。最大的问题是:1.这个参数意味着什么?2.哪些调用方使用它,他们给了它什么?他们期望什么?3.它在类中哪里有用?是的,这就是我最后做的。我看了几次,觉得它一开始就是“WTF”。然后我删除了它。