|
|
|
|
|
Let look at an important method in the Object class: toString( )
Example that shows that the GeometricObject class inherited the toString() method from the Object class
public class GeometricObject
{
private String color;
GeometricObject( String col )
{
color = col;
}
public String getColor()
{
return color;
}
public double getArea() // Dummy method
{
return 0; // Some default value
}
// No "toString()" method defined !
// Inherits "toString()" from Object !
}
|
public class myProg
{
public static void main(String[] args)
{
GeometricObject a =
new GeometricObject("red");
// We can call the toString() method
// using a GeometricObject object
System.out.println( a.toString( ) );
}
}
|
DEMO: demo/04-inheritance/15-toString
Example that shows that the Circle class also inherited the toString() method:
public class Circle extends GeometricObject { private double radius; Circle(String col, double r) { super(col); radius = r; } public double getRadius() { return radius; } public double getArea() { return 3.14159*radius*radius; } // Inherits "toString()" from GeomObject } |
public class myProg
{
public static void main(String[] args)
{
Circle a =
new Circle("red", 2.0);
// We can call the toString() method
// using a Circle object
System.out.println( a.toString( ) );
}
}
|
DEMO: demo/04-inheritance/16-toString
We can override the inherited toString() method to print out an object in a more suitable format:
public class Circle extends GeometricObject { private double radius; Circle(String col, double r) { super(col); radius = r; } ... // Override the "toString()" method public String toString() { return "Color = " + getColor() + " : " + "radius = " + radius; } } |
public class myProg
{
public static void main(String[] args)
{
Circle a =
new Circle("red", 2.0);
// We can call the toString() method
// using a Circle object
System.out.println( a.toString( ) );
System.out.println( a ); // Same !
}
}
|
DEMO: demo/04-inheritance/17-toString