编写一个名为Octagon的类,它扩展Geometricobject类并实现Comparable,Cloneable接口。假设八边形八条边的边长都相等。它的面积可以用下面的公式计算: 面积=(2+4/

编程入门 行业动态 更新时间:2024-10-09 18:16:22

编写一个名为Octagon的类,它扩展Geometricobject类并实现Comparable,Cloneable接口。假设八边形八条边的边长都相等。它的<a href=https://www.elefans.com/category/jswz/34/1764342.html style=面积可以用下面的公式计算: 面积=(2+4/"/>

编写一个名为Octagon的类,它扩展Geometricobject类并实现Comparable,Cloneable接口。假设八边形八条边的边长都相等。它的面积可以用下面的公式计算: 面积=(2+4/

  1. 题目
    编写一个名为Octagon的类,它扩展Geometricobject类并实现Comparable,Cloneable接口。假设八边形八条边的边长都相等。它的面积可以用下面的公式计算:
    面积=(2+4/sqrt(2))边长边长
    画出Octagon、Geometricobject、Comparable,Cloneable的UML图。编写一个测试程序,创建一个边长值为5的Octagon对象,然后显示它的面积和周长。使用clone方法创建一个新对象,并使用compareTo方法比较这两个对象。
  2. 代码
package testoctagon;
/***1. @author shinan*/
abstract class Geometricobject{String color="white";boolean filled;java.util.Date dateCreated;public Geometricobject(){dateCreated=new java.util.Date(); }public Geometricobject(String color,boolean filled){dateCreated=new java.util.Date();this.color=color;this.filled=filled;}public String getColor(){return color;}public void setColor(String color){this.color=color;}public boolean isFilled(){return filled;}public void setFilled(boolean filled){this.filled=filled;}public abstract double getArea();public abstract double getPerimeter();
} 
class Octagon extends Geometricobject implements Comparable,Cloneable{double side=0;public Octagon(double side){this.side=side;}public double setSide(){return side;}public double getArea(){return side*side*(2+4/Math.sqrt(2));}public double getPerimeter(){return side*8;}public Object clone()throws CloneNotSupportedException{return super.clone();}public int compareTo(Object o){if(getArea()>((Octagon)o).getArea())return 1;else if (getArea()<((Octagon)o).getArea())return -1;else return 0;}        
}
public class TestOctagon {/*** @param args the command line arguments*/public static void main(String[] args)throws Exception{// TODO code application logic hereOctagon o=new Octagon(5);System.out.println(o.getArea());System.out.println(o.getPerimeter());//Octagon a=new Octagon(4);//Octagon a1=a;Octagon a2=(Octagon)o.clone();System.out.println(opareTo(a2));}
}
  1. 运行结果截图

  2. UML图

更多推荐

编写一个名为Octagon的类,它扩展Geometricobject类并实现Comparable,Cloneable接口。假设八边形八条边的边长都相等。它的面积

本文发布于:2024-02-17 13:46:31,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1694231.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:面积   边长   可以用   公式   八条

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!