====== 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.";
};