====== abstract construct ======
Vergleiche Java:
public abstract class Person {
    protected Person(){}
    public abstract String getName();
    public static Person printName(){
        return ONEPERSON;
    }
    private static final Person ONEPERSON = new Person(){
       @Override
        public String getName() {
              return "My name is Mike.";
        }
    };
}
Person contains
{
  private:
    ONEPERSON is static Person contains
    {
      getName is overwritten String() : "My name is Mike.";
    };
    
  protected:
    construct;
  
  public abstract:
    getName is string(); // statt is abstract code -> string;
  
  public:
    printName is static Person() : ONEPERSON;
};
oder
Person contains
{
  private:
    ONEPERSON is static Person implements
    {
      getName is String() : "My name is Mike.";
    }
  ...
};
Worker is implicit Person
{
  implements Person:
    getName is String() : "My name is irrelevant.";
};