首页 > 其他 > 详细

toString()

时间:2019-10-08 19:36:21      阅读:139      评论:0      收藏:0      [点我收藏+]

toString()方法

1: 当我们调用一个对象的引用时,实际就是调用当前对象的toString方法.
2: String  Date, File 包装类都重写了Object类中的toString()方法,使得在调用对象的toString()方法时,返回的 "实体内容" 信息

3: 自定义类  也可以重写toString()方法,当调用此方法的时候, 返回这个对象的实体内容

 

 

 

练习:

?定义两个类,父类GeometricObject代表几何形状,子类Circle代表圆形。
技术分享图片

 

 

技术分享图片

 

 

 

解答:

 

技术分享图片
public class GeometricObject {
    protected String color;
    protected double weight;


    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public double getWeight() {
        return weight;
    }

    public void setWeigut(double weight) {
        this.weight = weight;
    }

    protected GeometricObject() {
        super();
        this.color = "white";
        this.weight = 1.0;
    }


    protected GeometricObject(String color, double weight) {
        super();
        this.color = color;
        this.weight = weight;
    }


}
GeometricObject

 

技术分享图片
public class Circle extends GeometricObject {
    private double radius;

    public Circle() {
        super();
//        this.color = "white";
//        this.weight = 1.0;
        this.radius = 1.0;
    }

    public Circle(double radius) {
        super();
        this.radius = radius;
    }

    public Circle(double radius, String color, double weight) {
        super(color, weight);
        this.weight = weight;
    }

    public double getRadius() {
        return radius;
    }

    public void setRadius(double radius) {
        this.radius = radius;
    }

    /**
     * 求圆的面积
     * @return
     */
    public double findArea(){
        return 3.14 * radius * radius;
    }


    @Override
    public  boolean equals(Object obj){
        if(this == obj){
            return true;
        }
        if(obj instanceof  Circle){
            Circle circle = (Circle) obj;
            return this.radius == circle.radius;
        }
        return false;
    }

    @Override
    public  String toString(){
        return "Circle [ radios =" + radius + " ]";
    }

}
Cicle

 

技术分享图片
public class CicleTest {
    public static void main(String[] args) {
        Circle circleOne = new Circle(6.0);
        Circle circleTwo = new Circle(6.0,"white",2.0);
        System.out.println(circleOne.findArea());

        System.out.println(circleOne.getColor().equals(circleTwo.getColor()));
        System.out.println(circleOne.equals(circleTwo));

        System.out.println();
    }
}
CicleTest

 


 

toString()

原文:https://www.cnblogs.com/zhaoyunlong/p/11636484.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!