天天看点

java继承circle类_创建名为Comparable的类,它继承自Circle类,并实现Comparable接口。实现compareTo方法,使其根据面积比较两个圆。编写一个测试程序求出Compa...

package text8;

import java.util.Scanner;

public class text6 {

public static void main(String[] args) {

Scanner input=new Scanner(System.in); System.out.print("Enter the radius of Circle1: "); double radius1=input.nextDouble(); System.out.print("Enter the radius of Circle2: "); double radius2=input.nextDouble(); ComparableCircle Circle1=new ComparableCircle(radius1); ComparableCircle Circle2=new ComparableCircle(radius2); ComparableCircle Circle3 = (ComparableCircle)Max.max(Circle1, Circle2); System.out.println("The Circle1's Area is " + Circle1.getArea()); System.out.println("The Circle2's Area is " + Circle2.getArea()); System.out.println("The Max Circle's radius is " + Circle3.getRadius()); }

}

class Circle1{

double radius;

Circle1()

{

radius=1;

}

Circle1(double newRadius)

{

this.radius=newRadius;

}

double getArea(){

return radiusradiusMath.PI;

}

double getPerimeter() {

return 2radiusMath.PI;

}

void setRadius(double newRadius) {

radius=newRadius;

}

public double getRadius() {

return radius;

}

}

class ComparableCircle extends Circle implements Comparable{

public ComparableCircle(double radius) {

super(radius);

}

@Override

public int compareTo(ComparableCircle o) {

if(getArea()>o.getArea())

{

return 1;

}

else if(getArea()

{

return -1;

}

else

{

return 0;

}

}

@Override

public String toString() {

return super.toString()+"Area: "+getArea();

}

}

class Max {

public static ComparableCircle max

(ComparableCircle o1, ComparableCircle o2) {

if (o1.compareTo(o2) > 0)

return o1;

else

return o2;

}

}