编写一个完整的Java Application程序,包括抽象类Shape、MyTriangle类、Test类。

具体要求如下:
⑴抽象类Shape:
double getArea():求一个形状的面积
double getPerimeter():求一个形状的周长
⑵类MyTriangle:
由Shape类派生的具体类,除实现Shape类中的方法外,另有以下属性和方法:
①属性
x,y,z:double型,表示三角形的三条边
s: 周长的1/2(注:求三角形面积公式为 ,s=(x+y+z)/2,开方可用Math.sqrt(double)方法)
②方法
MyTriangle(double x, double y, double z):构造函数,给三条边和s赋初值。
toString():输出矩形的描述信息,如"three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0"
⑶Test类作为主类要完成测试功能
①生成MyTriangle对象(三条边的值任取)
②调用对象的toString()方法,输出对象的描述信息

Shape.java

public abstract class Shape {
public abstract double getArea();
public abstract double getPerimeter();
}

MyTriangle.java

public class MyTriangle extends Shape{
//三遍
double x,y,z;
//周长的一半
double p;
//面积
double S;
public MyTriangle(double x, double y, double z){
this.x=x;
this.y=y;
this.z=z;
p= (x+y+z)/2;
S=Math.sqrt(p*(p-x)*(p-y)*(p-z));
}
@Override
public double getArea() {
return S;
}
@Override
public double getPerimeter() {
return p;
}
public String toString(){
return "three sides:"+x+","+y+","+z+","+"perimeter="+p+","+"area="+S;
}
}

Test.java

public class Test {
public static void main(String[] args) {
MyTriangle myTriangle = new MyTriangle(3, 3, 5);
System.out.println(myTriangle.toString());
}
}

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-17
确实很经典
第2个回答  2013-04-17
好经典的题,几年前写过
相似回答