程序填空题:设计一个ComparableCircle类继承自Circle类并实现Comparable接口
设计一个Circle类,该类有属性radius,表示圆的半径,其默认值为1;getArea()返回该圆的面积。
创建一个名为ComparableCircle的类,它继承自Circle类,并实现Comparable接口,在类中实现compareTo方法,使其根据面积比较两个圆。
编写测试程序求出两个ComparableCircle实例对象的较大者。程序输出如下信息:
Cirlce: radius = 7.0
Area: 153.93804002589985
Cirlce: radius = 5.0
Area: 78.53981633974483
c1较大
java
class Circle {
private double radius;
public {
radius = 1;
}
public Circle(double radius) {
= radius;
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public double getArea() {
}
public String toString() {
}
}
class ComparableCircle Circle Comparable<ComparableCircle> {
public ComparableCircle() {
}
public ComparableCircle(double radius) {
}
@Override // Implement the compareTo method defined in Comparable
public int compareTo() {
if (getArea() > o.getArea())
return 1;
else if (getArea() < o.getArea())
return -1;
else
return 0;
}
@Override
public String toString() {
return + "\nArea: " + getArea();
}
}
public class Main {
public static void main(String[] args) {
ComparableCircle c1 = new ComparableCircle(7);
ComparableCircle c2 = new ComparableCircle(5);
System.out.println(c1);
System.out.println(c2);
System.out.println(?"c1较大":"c2较大");
}
}
答案:
第1空:Circle()
第2空:this.radius
第3空: return radius * radius * Math.PI;
第4空:return "Cirlce: radius = " + radius;
第5空:extends
第6空:implements
第7空:super(radius);
第8空:ComparableCircle o
第9空:super.toString()
第10空:(c1.compareTo(c2)>=0)
创建一个名为ComparableCircle的类,它继承自Circle类,并实现Comparable接口,在类中实现compareTo方法,使其根据面积比较两个圆。
编写测试程序求出两个ComparableCircle实例对象的较大者。程序输出如下信息:
Cirlce: radius = 7.0
Area: 153.93804002589985
Cirlce: radius = 5.0
Area: 78.53981633974483
c1较大
java
class Circle {
private double radius;
public {
radius = 1;
}
public Circle(double radius) {
= radius;
}
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
}
public double getArea() {
}
public String toString() {
}
}
class ComparableCircle Circle Comparable<ComparableCircle> {
public ComparableCircle() {
}
public ComparableCircle(double radius) {
}
@Override // Implement the compareTo method defined in Comparable
public int compareTo() {
if (getArea() > o.getArea())
return 1;
else if (getArea() < o.getArea())
return -1;
else
return 0;
}
@Override
public String toString() {
return + "\nArea: " + getArea();
}
}
public class Main {
public static void main(String[] args) {
ComparableCircle c1 = new ComparableCircle(7);
ComparableCircle c2 = new ComparableCircle(5);
System.out.println(c1);
System.out.println(c2);
System.out.println(?"c1较大":"c2较大");
}
}
答案:
第1空:Circle()
第2空:this.radius
第3空: return radius * radius * Math.PI;
第4空:return "Cirlce: radius = " + radius;
第5空:extends
第6空:implements
第7空:super(radius);
第8空:ComparableCircle o
第9空:super.toString()
第10空:(c1.compareTo(c2)>=0)