Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.

Tip of the Day
Language: Java
Expertise: Intermediate
Jan 31, 2006



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Printing an Object in Java

When you use System.out.println( ) by passing an object as an argument, the JRE invokes its toString( ) method by default. If you haven't overridden this method, then you end up with very vague output. For example:

//Without overriding the toString() method
public class NoImplForToString {
    int a, b;

    public NoImplForToString(int x, int y) {
        a = x; b = y;

    //main method
    public static void main(String args[]) { 
        System.out.println(new NoImplForToString(11, 65));
You might see this uninformative output:

However, if you override the toString() method and provide an implementation that you understand, it definitely will look better—both for presentation and comprehension:

//Overriding the toString() method
public class ImplForToString {
    int a, b;

    public ImplForToString(int x, int y) {
        a = x; b = y;

    // Overriding toString 
    public String toString( ) {
        return "ImplForToString[" + a + "," + b + "]";
    //main methid
    public static void main(String args[]) { 
        System.out.println(new ImplForToString(11, 65));
This version produces the more useful output:

MS Sridhar
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date