package st; public abstract class AbstractInstance { protected String name; // the literal name of the declaration protected TypeEnum type; // the type of the declaration protected int size; // the size in memory public AbstractInstance(String name, TypeEnum type) { this.type = type; this.name = name; } public String toString() { return this.name; } public boolean equals(AbstractInstance other) { return this.name == other.getName(); } public int hashCode() { return this.name.hashCode(); } public String getName() { return this.name; } public TypeEnum getType() { return this.type; } public int getSize() { return this.size; } }