Java में toString() मेथड का उद्देश्य क्या है?
यदि हम किसी क्लास के ऑब्जेक्ट को String के रूप में दर्शाना चाहते हैं, तो हम toString() मेथड का उपयोग कर सकते हैं जो ऑब्जेक्ट का टेक्स्टुअल प्रतिनिधित्व लौटाता है।
जब आप किसी ऑब्जेक्ट को प्रिंट करते हैं, तो डिफ़ॉल्ट रूप से Java कंपाइलर ऑब्जेक्ट पर toString() मेथड को इनवोक करता है। इसलिए toString() मेथड को ओवरराइड करके, हम सार्थक आउटपुट प्रदान कर सकते हैं।
आइए इस अवधारणा को निम्न उदाहरण में देखें:
toString() मेथड को ओवरराइड करना
package io.devqa.tutorials;
public class ToStringExample {
private String firstName;
private String lastName;
private String email;
public ToStringExample() {
}
public String getFirstName() { return firstName; }
public void setFirstName(String firstName) { this.firstName = firstName; }
public String getLastName() { return lastName; }
public void setLastName(String lastName) { this.lastName = lastName; }
public String getEmail() { return email; }
public void setEmail(String email) { this.email = email; }
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("First name : ").append(this.firstName).append("\n");
sb.append("Last name : ").append(this.lastName).append("\n");
sb.append("Email : ").append(this.email).append("\n");
return sb.toString();
}
public static void main(String args[]) {
ToStringExample example = new ToStringExample();
example.setFirstName("Testing");
example.setLastName("Tester");
example.setEmail("testing@tester.com");
System.out.println(example);
}
}
उपरोक्त कोड निम्न आउटपुट देता है:
First name : Testing
Last name : Tester
Email : testing@tester.com
यदि हमने toString() मेथड को ओवरराइड नहीं किया होता, तो आउटपुट होता
io.devqa.tutorials.ToStringExample@60e53b93
जैसा कि देखा जा सकता है, toString() मेथड को ओवरराइड करके, हम ऑब्जेक्ट का सार्थक प्रस्तुतीकरण आउटपुट कर सकते हैं।