For example, a class which is intended to act only as a utility class, which contains only static methods and no state, would not make sense as a candidate for a table. If it is marked final, no subclasses could ever define values such that this needs to be treated as a superclass of another table.
And if this class is derived from another class which defines values, there is still no need for an additional table as there is no distinction between elements of this type and elements of the container class. However this particular point might still need some exploration.
It is safe to say that if this class extends no class inside of the schema package (i.e. extending Object or some other class of the Java API is okay and doesn't indicate a table should be created), and is marked final so that it can have no children, then there is no need to create a table for it.
For example, a class which is intended to act only as a utility class, which contains only static methods and no state, would not make sense as a candidate for a table. If it is marked final, no subclasses could ever define values such that this needs to be treated as a superclass of another table.
And if this class is derived from another class which defines values, there is still no need for an additional table as there is no distinction between elements of this type and elements of the container class. However this particular point might still need some exploration.
It is safe to say that if this class extends no class inside of the schema package (i.e. extending Object or some other class of the Java API is okay and doesn't indicate a table should be created), and is marked final so that it can have no children, then there is no need to create a table for it.