Can someone please tell me what this is doing. Its a class that holds an extending generic of itself? what does that even mean?
public abstract class AbstractStructureBuilder<T extends AbstractStructureBuilder> implements IStructureBuilder
{
//abstract and concrete methods in here
}