【发布时间】:2016-01-05 05:50:01
【问题描述】:
我有一个不太好的遗留代码涉及使用私有静态类的方法我想知道是否可以调用此类中的方法。我正在为此编写测试。 如果这是一种方法,我知道可以通过反射来完成,但它不是。
public class FiscalReport implements Report
{
private void readProductValueClass()
{
Connection dbc = null;
Statement st = null;
ResultSet rs = null;
String q = null;
try
{
dbc = db.getConnection();
dbc.setAutoCommit(false);
st = dbc.createStatement();
routerClassMap = new HashMap();
q = "SELECT * FROM sales_report";
rs = st.executeQuery(q);
while(rs.next())
{
ProductValueClassrc = new ProductValueClass(); // <---this new class
// is where it gets called...
.....
}
private static class ProductValueClass
{
public String name;
public String emp;
public String sale;
public String option;
public String value;
public Query q;
public Query qr
public Query sql;
public String toString()
{
return
"[" +
name + ", " +
emp + ", " +
sale + ", " +
option + ", " +
values +
"]";
}
public Query query()
{
return q.add(q(notEqual(qr)? null: sql));
}
}
}
【问题讨论】:
-
'静态内部'在术语上是矛盾的。不清楚为什么它是一个嵌套类。不清楚你在问什么。
-
我认为它们的意思是静态嵌套类。
-
请提供代码示例,您需要在哪里调用
ProductValueClass的方法 -
@Ernz 当然。它是静态的,而且是嵌套的。
标签: java class methods private