讓我們想象一下我想要一個not.my.Clock通過我的應用程序: public final class Clock {
... // business
}
我可以寫: @Singleton
public class ClockProvider implements Supplier<Clock> {
private Clock clock;
@PostCon
爲什麼這裏需要局部變量我不明白:https://en.wikipedia.org/wiki/Double-checked_locking#Usage_in_Java 我們能有什麼問題,如果我們沒有這樣的: public class FinalWrapper<T> {
public final T value;
public FinalWrapper(T value) {