package net.minecraft.util; public abstract class LazyLoadBase { private T value; private boolean isLoaded; public T getValue() { if (!this.isLoaded) { this.isLoaded = true; this.value = (T)this.load(); } return this.value; } protected abstract T load(); }