手记

接口应用的练习------

题目:定义一个接口实现两个对象的比较

interface CompareObject{
int compareTo(Object o);//若返回值为0,代表相等;若为正数,代表当前的对象大,负数则代表当前的对象小。
}

定义一个Circle类。
定义一个ComparableCircle类继承Circle类并且实现CompareObject接口,在ComparableCircle类中给出接口中方法compare的实现体,用来比较两个圆的半径大小。
定义一个测试类TestInterface,创建两个comparavleCircle对象,调用compareTo方法比较两个类的半径大小。
代码如下:

public class TestInterface1 {
    public static void main(String[] args) {
        ComparableCircle c1=new ComparableCircle(5.5);
        ComparableCircle c2=new ComparableCircle(2.2);
        System.out.println(c2.compareTo(c1));
    }

}
interface CompareObject{
int compareTo(Object o);//若返回值为0,代表相等;若为正数,代表当前的对象大,负数则代表当前的对象小。
}
class Circle{
    public Circle(){}
    private double radius;

    public double getRadius() {
        return radius;
    }

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

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

}
class ComparableCircle extends Circle implements Comparable{
     public ComparableCircle(double radius) {
        // TODO Auto-generated constructor stub
         super(radius);
    }
    @Override
    public int compareTo(Object o) {
        ComparableCircle c=(ComparableCircle)o;
        if(this==o){
            return 0;
        }else if(c.getRadius()<this.getRadius()){
            return -1;
        }else{
            return 1;
        }

    }
}
3人推荐
随时随地看视频
慕课网APP