Наследование статических полей java

Есть класс

public abstract class SuperClass {
  static String name = "Not initialized";

  public static void load(String Name) {
    name = Name;
  }
  public static String getName() {
    return name;
  }
   ...
}

И его наследники

public abstract class First extends SuperClass{}
public abstract class Second extends SuperClass{}

При выполнении First.load("first"); в First.getName() получим "first", но если после выполнить Second.load("second");, то в в First.getName() получим уже "second". Т.е. статические поля для наследников общие. Есть ли возможность их как-то разделить? Поскольку поле name используется и в суперклассе и в наследниках, то я не могу просто объявить его только в наследниках или в двух местах одновременно, так как функция load изменит только поле суперкласса.


Ответы (0 шт):