what is the comparable interface in java?