Yes, but toString() is already a method in the Object class, so there is absolutely no point in adding it to my Shape interface definition.
Toxic...I can't really see how that has got anything to do with the interface definition. The reading of the shape data from file should be handled by the serialisation methods that needs to be defined in each of the shape classes, and there is already a Serializable interface definition for that.
The attributes may all be integers, but the function for each attribute is different for each shape. Adding say a getOrigin() method to the Shape interface is bad design, since you would have to cast up to access the other unique attributes like radius, width, height and endpoint.
This exercise is really a very bad one to explain the use of interfaces to provide loosely coupled code. Really the only thing a noob can take out of this is adding serialisation and all that other canonical crap to the classes.