The toString method is widely implemented. It provides a simple, convenient mechanism for debugging classes during development. It is also widely used for logging, and for passing informative error messages to Exception constructors and assertions
As you yourself have rightly used the word "need" if you want to print a descriptive information about your object then you will override toString method.