设计一个名为Triangle的类来扩展GeometricObject类。
该类包括三个名为side1、side2、和side3的double数据域表示这个三角形的三条变,它们都默认值为1.0。
一个无参构造函数创建默认三角形。
一个能创建带指定side1、side2和side3的三角形构造方法。
所有三个数据域的访问器方法。
一个名为getarea()的方法返回这个三角形的面积。
一个名为getperimeter()的方法返回这个三角形的周长。
一个名为tostring()的方法返回这个三角形的字符串描述。
public class triangle extends GeometricObject{
private double side1=1.0;
private double side2=1.0;
private double side3=1.0;
public triangle(){
super.date=new date();
}
public triangle(double side1,double side2,double side3){
if(side1+side2>side3&side2+side3>side1&side3+side1>side2) {
this.side1=side1;
this.side2=side2;
this.side3=side3;
super.date=new date();
}
else {
return “this is not a triangle”;
}
public double getside1(){
return side1;
}
public double getside2(){
return side2;
}
public double getside3(){
return side3;
}
public void getArea(){
if(side1+side2>side3&side2+side3>side1&side3+side1>side2){
double h=0.5*(side1+side2+side3);
return Math.sqrt(h*(h-side1)*(h-side2)*(h-side3));
}
else return"this is not a triangle";
}
public void getPerimeter(){
if(side1+side2>side3&side2+side3>side1&side3+side1>side2){
return side1+side2+side3;
}
else return"this is not a triangle";
}
public string toString(){
if(side1+side2>side3&side2+side3>side1&side3+side1>side2)
{
return "Triangle:side1="+side1+"side2="+side2+"side3="+side3;
}
else return"this is not a triangle";
}
import java.util.Scanner;
public class Triangle {
public static void main(string[]args){
double side1,side2,side3;
boolean filled;
Scanner input=new Scanner(System.in);
System .out.println("enter the side1,side2,side3:");
side1=input.nextdouble();
side2=input.nextdouble();
side3=input.nextdouble();
Triangle 1=new triangle(side1,side2,side3);
Filled=input.nextBoolean();
if(1.setfilled(filled)==true){
input.nextline();
System.out.println("set the color:");
String color=input.nextline();
1. setcolor(color);
}
System.out.println(1.tostring+"n"+"area :"+1.getarae()+"\n"+"perimeter"+1.getperimeter()+"\n"+1.setfilled(filled)+"\n"+1.color);
}
}
父类:
Geometricobject |
---|
-color:string |
-filled:boolean |
-datecreated:java.Util.date |
+Geometricobject() |
+Geometricobject(color:string,filled:boolean) |
+getcolor():string |
+setcolor(color:string):void |
+isfilled():boolean |
+setfilled(filled:boolean):void |
+getdatecreated():java.util.date |
+tostring():string |
(这边是假装的箭头,没找到箭头图片,凑合看吧)
子类:
Triangle |
---|
-side1:double |
-side2:double |
-side3:double |
+Triangle() |
+Triangle(side1:double,side2:double,side3:double) |
+getside2():double |
+getside3():double |
+gerArea():void |
getPerimeter():void |
+tostring():string |