Java being object-oriented only deals with classes and objects so do if we do require any computation we use the help of object/s corresponding to the class. It is the most frequent method of Java been used to get a string representation of an object. Now you must be wondering that till now they were not using the same but getting string representation or in short output on the console while using System.out.print. It is because this method was getting automatically called when the print statement is written. So this method is overridden in order to return the values of the object which is showcased below via examples.
Example 1:
Tóm Tắt
Java
class
Complex {
private
double
re, im;
public
Complex(
double
re,
double
im) {
this
.re = re;
this
.im = im;
}
}
public
class
Main {
public
static
void
main(String[] args) {
Complex c1 =
new
Complex(
10
,
15
);
System.out.println(c1);
}
}
Output
Complex@214c265e
Output Explanation: The output is the class name, then ‘at’ sign, and at the end hashCode of the object. All classes in Java inherit from the Object class, directly or indirectly (See point 1 of this). The Object class has some basic methods like clone(), toString(), equals(),.. etc. The default toString() method in Object prints “class name @ hash code”. We can override the toString() method in our class to print proper output. For example, in the following code toString() is overridden to print the “Real + i Imag” form.
Example 2:
Java
public
class
GFG {
public
static
void
main(String[] args) {
Complex c1 =
new
Complex(
10
,
15
);
System.out.println(c1);
}
}
class
Complex {
private
double
re, im;
public
Complex(
double
re,
double
im) {
this
.re = re;
this
.im = im;
}
public
double
getReal() {
return
this
.re;
}
public
double
getImaginary() {
return
this
.im ;
}
public
void
setReal(
double
re) {
this
.re = re;
}
public
void
setImaginary(
double
im) {
this
.im = im;
}
@Override
public
String toString() {
return
this
.re +
" + "
+
this
.im +
"i"
;
}
}
Output
10.0 + 15.0i
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
My Personal Notes
arrow_drop_up