草庐IT

forward_static_call

全部标签

java - "Non-static variable this cannot be referenced from a static context"创建对象时

我编写了以下代码来测试Java中类和对象的概念。publicclassShowBike{privateclassBicycle{publicintgear=0;publicBicycle(intv){gear=v;}}publicstaticvoidmain(){Bicyclebike=newBicycle(5);System.out.println(bike.gear);}}为什么在编译过程中会出现以下错误?ShowBike.java:12:non-staticvariablethiscannotbereferencedfromastaticcontextBicyclebike=ne

java - 什么时候不要在 Java 中使用 static 关键字?

什么时候在Java中的方法签名上使用static关键字被认为是不好的做法?如果一个方法基于一些参数执行一个函数,并且不需要访问非静态字段,那么您不总是希望这些类型的方法是静态的吗? 最佳答案 在大型Java应用程序中您将遇到的两个最大弊端是静态方法,纯函数除外*可变静态字段这些在一定程度上破坏了您代码的模块化、可扩展性和可测试性,我意识到在有限的时间和空间内我不可能希望让您相信。*“纯函数”是不修改任何状态并且其结果仅取决于提供给它的参数的任何方法。因此,例如,任何执行I/O(直接或间接)的函数都不是纯函数,但Math.sqrt()

java : in what order are static final fields initialized?

好的,假设我有一个看起来像这样的类(class):publicclassSignupServletextendsHttpServlet{privatestaticfinalLoggerSERVLET_LOGGER=COMPANYLog.open(SignupServlet.class);privatestaticfinalExceptionMessageHandlerhandler=newExceptionMessageHandler();privatestaticfinalSignupServletObservableAgentsignupObservableAgent=newSig

java - OOo/LibreOffice UNO/Java : How to get calling spreadsheet cell of a calc function?

在用Java编写的OpenOffice/LibreOfficeCalc(电子表格)的UNO扩展中,如何确定UDF(电子表格函数)实现中的调用单元格?备注在Excel/VBA中,这可以通过Application.Caller获取调用者的主要动机是记录/跟踪/调试,即将调用单元视为堆栈跟踪的一部分。应该可以获得这些信息,因为像“ROW()”和“COLUMN()”这样的内置函数确实对调用单元有一些了解。使用这种可能性的应用程序(用于Excel)是Obba,电子表格的对象处理程序。这里的“控制面板”提供了一个(Java)异常列表,包括调用单元,即,该单元是堆栈跟踪的一部分。请参阅以下屏幕截图:

java - 我们应该什么时候使用 "public static final String"?

我见过很多人写的代码publicstaticfinalStringmystring=...然后只使用一个值。为什么他们必须这样做?为什么他们必须在使用之前将值初始化为final?更新好的,谢谢大家的回答,我理解这些键的含义(publicstaticfinal)。我不明白的是为什么人们会使用它,即使常量只会在一个地方并且只在同一个类中使用。为什么要宣布它?为什么我们不只使用变量? 最佳答案 final表示变量的值不会改变——也就是说,一个constant,它的值在声明之后就不能被修改。当你想创建一个String时使用publicfin

java - 我收到此警告 : non-varargs call of varargs method with inexact argument type for last parameter;

这是我收到警告的示例代码。ClassaClass=Class.forName(impl);Methodmethod=aClass.getMethod("getInstance",null);item=(PreferenceItem)method.invoke(null,null);警告:warning:non-varargscallofvarargsmethodwithinexactargumenttypeforlastparameter;casttojava.lang.Classforavarargscallcasttojava.lang.Class[]foranon-varargs

java - 'public static final' 还是带有 setter/getter 的 'private static final'?

在Java中,变量应该保持私有(private)以实现更好的封装,但是静态常量呢?这个:publicstaticfinalintFOO=5;结果与此等价:privatestaticfinalintFOO=5;...publicstaticgetFoo(){returnFOO;}但哪种做法更好? 最佳答案 不直接在代码中使用常量的原因之一。假设FOO稍后可能会更改(但仍保持不变),例如publicstaticfinalintFOO=10;。只要没有人愚蠢到直接硬编码值,就不应该破坏任何东西吗?没有。Java编译器会将上面的Foo等常量

java - 连接到 Amazon RDS Oracle 实例时如何处理 "Got minus one from a read call"错误

我在AmazonRDS实例上运行Oracle11GR2。有时我在调用DriverManager.getConnection(getUrl())时收到IOError:Gotminusonefromareadcall,我不知道为什么。其他应用程序正常工作。为了进一步混淆,错误有时会自行纠正(在程序的下一次迭代之后)。我应该如何处理“从读取调用中得到减一”错误?完整的堆栈跟踪:java.sql.SQLRecoverableException:IOError:Gotminusonefromareadcallatoracle.jdbc.driver.T4CConnection.logon(T4C

java - Spring MVC 异常 - 调用请求方法导致异常 : public static native long java. lang.System.currentTimeMillis()

我刚刚在我的日志文件中多次看到此异常:Invokingrequestmethodresultedinexception:publicstaticnativelongjava.lang.System.currentTimeMillis()java.lang.IllegalArgumentException:Invalidhandlermethodreturnvalue:1302697287376atorg.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerExceptionResolver.getModel

java - Spring :Inserting cookies in a REST call response

我正在使用springmvc实现RESTAPI端点。我正在尝试发回带有cookie值的HTTP响应。这相当于我在ruby​​SINATRA中需要做的事情:response.set_cookie('heroku-nav-data',:value=>params['nav-data'],:path=>'/')这是我迄今为止尝试过的,但没有奏效:@RequestMapping(value="/login",method=RequestMethod.POST)publicResponseEntitysingle_sign_on(@RequestBodyStringbody_sso){Strin