final class DateHandler
{
private static volatile DateFormat format = DateFormat.getDateInstance(DateFormat.MEDIUM);
public static Date parse(String str) throws ParseException
{
return format.parse(str);
}
}
因为DateFormat不是线程安全的,所以该parse()方法可能会返回一个与参数Date不对应的值str。但是用替换return语句可以
DateFormat.getDateInstance(DateFormat.MEDIUM).parse(str);
解决问题并使其成为线程安全的。
有人可以详细说明一下。