最终在下面的代码之间有什么不同.将参数声明为final是否有任何优势.
public String changeTimezone( Timestamp stamp, Timezone fTz, Timezone toTz){
return ....
}
public String changeTimezone(final Timestamp stamp, final Timezone fTz,
final Timezone toTz){
return ....
}
Run Code Online (Sandbox Code Playgroud) 我试图读取文件夹中的文件,但是当我运行该程序时,它会抛出此异常.我也尝试过其他一些文件夹.它引发了同样的异常.
Exception in thread "main" java.io.FileNotFoundException: C:\backup (Access is denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
Run Code Online (Sandbox Code Playgroud) 我正在使用Apache HTTP Client开发Java .
我在模式yyyy-MM-dd hh:mm a中有一个字符串,我可以单独获取时区对象,其中上面的字符串表示日期.
我想将其转换为以下格式.yyyy-MM-dd HH:mm:ss Z.
我怎样才能做到这一点?
我在实践中阅读Java并发性,下面的例子来自于此.我的问题是这个参考逃脱是什么意思?会有什么问题?.这个引用是如何从doSomething(e)中逃脱的.
public class ThisEscape {
public ThisEscape(EventSource source) {
source.registerListener(
new EventListener() {
public void onEvent(Event e) {
doSomething(e);
}
}
);
}
}
Run Code Online (Sandbox Code Playgroud)
这是如何解决这个问题的
public class SafeListener {
private final EventListener listener;
private SafeListener() {
listener = new EventListener() {
public void onEvent(Event e) {
doSomething(e);
}
};
}
public static SafeListener newInstance(EventSource source) {
SafeListener safe = new SafeListener();
source.registerListener(safe.listener);
return safe;
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:
我试过以下的例子
public class Escape {
public Escape( Printer printer ){
printer.print(new Escaper(){
@Override …Run Code Online (Sandbox Code Playgroud) 考虑下面的struts Action类,我StringBuilder在execute方法中使用了一个变量.我的问题:变量sb线程是否安全?
public DemoAction extends Action
{
......
public ActionForward execute(.....)
{
StringBuilder sb = new StringBuilder();
}
}
Run Code Online (Sandbox Code Playgroud)
如果在execute()之外声明了相同的变量sb,该怎么办?请记住,WebContainer中只有一个DemoAction对象.
在Servlet类中,我正在检查
if("Mail".equals(request.getParameter(mode))||"Chat".equals(request.getParameter(mode))){}
我的问题是为字符串"Mail"和"Chat"分配的内存.它是否会为每个对此servlet的请求创建新的字符串对象.GC怎么样?
我使用的是 Tomcat 5.0.28 版,我正在分析堆转储。它显示内存泄漏是由于 BodyContentImpl 对象造成的,这似乎(不确定)它在标签之间缓存了 jsp 的内容。我还发现该版本存在问题,它不会重置内部用于保存数据的缓冲区。在更高版本的 tomcat 中有限制缓冲区的选项。
我想知道的是,BodyContentImpl 实际上是做什么的,是缓存标签还是数据。它在动态变化的 jsp 中将如何有用。