当我编译我的java类时。有些错误在类名中找不到symble'/'。以下是我班级的示例代码:
public TransactionSearchResponse submit(TxnSearchRequest req)
{
url = (new StringBuilder(String.valueOf(req.getBaseUrl()))).append("/txns/search").toString();
method = "POST";
return (TransactionSearchResponse)sendRequest(req, com/COMPPONENT/api/TransactionSearchResponse);
}
此代码块作者的版权原因。 sendRequest方法已删除。
Netbeans无法识别班级名称“com / COMPPONENT / api / TxnResp”中的短划线'/'。类名包含一些部分:
包名:com.COMPONENT.api
班级名称:TxnResp
Java文件名:TxnResp.java
短划线'/'显示为红色,因为Netbeans将其屏蔽为错误行。我从Netbeans得到的唯一提示是“为com.COMPONENT.api.TxnResp添加导入”或“翻转'/'的操作数(可能会改变语义),我这样做但没有运气。当我尝试运行时代码,它会生成“无法找到符号”的错误。你能帮我解决这个问题吗?
此致 Dung Tri
答案 0 :(得分:1)
如果方法sendRequest被声明为
Object sendRequest( Request x, Class<?> y )
您必须使用java.lang.Class对象的实例调用它:
... = sendRequest( request, com.COMPPONENT.api.TxnResp.class );
追加.class是获取某个Class对象实例的方法(不要与使用新TxnResp创建的TxnResp实例混淆)。
另外,给定
com.COMPPONENT.api.TxnResp txnResp = new com.COMPPONENT.api.TxnResp();
表达式
txnResp.getClass()
会产生Class<com.COMPPONENT.api.TxnResp>
的实例,但当然.class符号对您的目的来说更方便。