pho*_*nix 5 java code-analysis intellij-idea
我在我的代码(AggregateFunctions)中只有一个地方实例化了一个对象,如下所示。
private String selectColumns() {
String query = "SELECT ";
if (this.distinctResults) {
query = query + "DISTINCT ";
}
SelectColumn selectColumn = new SelectColumn(this);
if (!this.applyAggregation) {
for (Object object : this.columns) {
query = selectColumn.selectColumn(query, object);
}
} else {
AggregateFunctions aggregateFunctions = new AggregateFunctions(this);
query = query + aggregateFunctions.select();
}
//Remove extra ', '
query = query.substring(0, query.length() - 2) + " FROM ";
return query;
}
Run Code Online (Sandbox Code Playgroud)
构造器:
public AggregateFunctions(@NotNull SqlQueryGenerator sqlQueryGenerator) {
this.spaceEncloser = sqlQueryGenerator.getSpaceEncloser();
this.selectColumn = new SelectColumn(sqlQueryGenerator);
JSONObject formData = sqlQueryGenerator.getFormData();
this.columns = formData.getJSONArray("columns");
this.aggregateJson = formData.getJSONObject("functions").getJSONArray("aggregate");
this.aggregatesList = new ArrayList<Aggregate>();
prepareAggregates();
this.query = new StringBuilder();
}
public SelectColumn(SqlQueryGenerator sqlQueryGenerator) {
this.sqlQueryGenerator = sqlQueryGenerator;
}
Run Code Online (Sandbox Code Playgroud)
但是 IntelliJ 代码分析对递归调用做了以下说明。基本没看懂意思。任何人都可以详细说明以帮助我理解吗?
问题概要
构造函数有用法,但它们都属于递归调用链,没有成员可从入口点访问。
问题解决
这是来自未使用声明检查的警告。IntelliJ IDEA 认为构造函数无法从任何入口点访问。然而,构造函数并未被使用,但用法本身是无法访问的。
如果您的代码不是这种情况,则可能是 IntelliJ IDEA 中的错误。
| 归档时间: |
|
| 查看次数: |
2187 次 |
| 最近记录: |