编写一个完整的Java Application 程序
编写一个完整的JavaApplication程序。包含父类Shape,接口IshapeCaculate类Rectangel,Triangle,Test具体要求如下:--父...
编写一个完整的Java Application 程序。
包含父类Shape,接口IshapeCaculate
类Rectangel,Triangle,Test
具体要求如下:
--父类
(1)父类Shape:
name:String类型,形状的名称
color:String类型,形状的颜色
--接口
(2)IshapeCaculate
double getArea():求一个形状的面积
double getPerimeter ():求一个形状的周长
--子类
(3.1)类 Rectangel:
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
width: double类型,表示矩形的长
height: double类型,表示矩形的高
② 方法
Rectangle(double w, double h):构造函数
toString()方法 :输出矩形的描述信息,如“矩形 width=1.0,height=2.0, perimeter=6.0, area=2.0”
(3.2)类Triangle:
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
x,y,z: double型,表示三角形的三条边
s: 周长的1/2(注:求三角形面积公式为sqrt(s(s-x)(s-y)(s-z)) ,s=(x+y+z)/2 ,开方可用Math.sqrt(double)方法)
② 方法
Triangle(double x, double y, double z):构造函数,给三条边和s赋初值。
toString():输出矩形的描述信息,如“三角形 three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”
(3.3)类Circle
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
radius: double类型,圆的半径
② 方法
Circle(double radius):构造函数
toString()方法 :输出矩形的描述信息,如“圆形 radius=1.0, perimeter=6.28, area=3.14”
--测试类
(4)Test类作为主类要完成测试功能
① 生成Rectangle对象
② 调用对象的toString方法,输出对象的描述信息 展开
包含父类Shape,接口IshapeCaculate
类Rectangel,Triangle,Test
具体要求如下:
--父类
(1)父类Shape:
name:String类型,形状的名称
color:String类型,形状的颜色
--接口
(2)IshapeCaculate
double getArea():求一个形状的面积
double getPerimeter ():求一个形状的周长
--子类
(3.1)类 Rectangel:
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
width: double类型,表示矩形的长
height: double类型,表示矩形的高
② 方法
Rectangle(double w, double h):构造函数
toString()方法 :输出矩形的描述信息,如“矩形 width=1.0,height=2.0, perimeter=6.0, area=2.0”
(3.2)类Triangle:
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
x,y,z: double型,表示三角形的三条边
s: 周长的1/2(注:求三角形面积公式为sqrt(s(s-x)(s-y)(s-z)) ,s=(x+y+z)/2 ,开方可用Math.sqrt(double)方法)
② 方法
Triangle(double x, double y, double z):构造函数,给三条边和s赋初值。
toString():输出矩形的描述信息,如“三角形 three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”
(3.3)类Circle
实现接口IshapeCaculate,并有以下属性和方法:
① 属性
radius: double类型,圆的半径
② 方法
Circle(double radius):构造函数
toString()方法 :输出矩形的描述信息,如“圆形 radius=1.0, perimeter=6.28, area=3.14”
--测试类
(4)Test类作为主类要完成测试功能
① 生成Rectangle对象
② 调用对象的toString方法,输出对象的描述信息 展开
3个回答
展开全部
/*
* --测试类 (4)Test类作为主类要完成测试功能 ① 生成Rectangle对象 ② 调用对象的toString方法,输出对象的描述信息
*/
public class Test {
public static void main(String args[]) {
Rectangel rectangel = new Rectangel(1,2);
System.out.println(rectangel);
Triangle triangle = new Triangle(3,4,5);
System.out.println(triangle);
Circle circle = new Circle(1);
System.out.println(circle);
}
}
/*
* --父类 (1)父类Shape: name:String类型,形状的名称 color:String类型,形状的颜色
*/
class Shape {
private String name;
private String color;
}
/*
* --接口 (2)IshapeCaculate double getArea():求一个形状的面积 double getPerimeter
* ():求一个形状的周长
*/
interface IshapeCaculate {
public double getArea();
public double getPerimeter();
}
/*
* --子类 (3.1)类 Rectangel: 实现接口IshapeCaculate,并有以下属性和方法: ① 属性 width:
* double类型,表示矩形的长 height: double类型,表示矩形的高 ② 方法 Rectangle(double w, double
* h):构造函数 toString()方法 :输出矩形的描述信息,如“矩形 width=1.0,height=2.0, perimeter=6.0,
* area=2.0”
*/
class Rectangel extends Shape implements IshapeCaculate {
private double width;
private double height;
public Rectangel(double w, double h) {
this.width = w;
this.height = h;
}
@Override
public double getArea() {
return width * height;
}
@Override
public double getPerimeter() {
return 2 * (width + height);
}
public String toString() {
return "矩形 width=" + width + ",height=" + height + ", perimeter=" + getPerimeter() + ",area=" + getArea();
}
}
/*
* (3.2)类Triangle: 实现接口IshapeCaculate,并有以下属性和方法: ① 属性 x,y,z:double型,表示三角形的三条边 s:
* 周长的1/2(注:求三角形面积公式为sqrt(s(s-x)(s-y)(s-z)) ,s=(x+y+z)/2
* ,开方可用Math.sqrt(double)方法) ② 方法 Triangle(double x, double y, double
* z):构造函数,给三条边和s赋初值。 toString():输出矩形的描述信息,如“三角形 three
* sides:3.0,4.0,5.0,perimeter=12.0,area=6.0” --测试类 (4)Test类作为主类要完成测试功能 ①
* 生成Rectangle对象 ② 调用对象的toString方法,输出对象的描述信息
*
*/
class Triangle extends Shape implements IshapeCaculate {
private double x;
private double y;
private double z;
private double s;
public Triangle(double x, double y, double z) {
this.x = x;
this.y = y;
this.z = z;
s = getPerimeter() / 2;
}
@Override
public double getArea() {
return Math.sqrt(s * (s - x) * (s - y) * (s - z));
}
@Override
public double getPerimeter() {
return x + y + z;
}
public String toString() {
return "三角形 three sides:" + x + "," + y + "," + z + ",perimeter=" + getPerimeter() + ",area=" + getArea();
}
}
/*
* (3.3)类Circle实现接口IshapeCaculate,并有以下属性和方法: ① 属性 radius: double类型,圆的半径 ② 方法
* Circle(double radius):构造函数 toString()方法 :输出矩形的描述信息,如“圆形 radius=1.0,
* perimeter=6.28, area=3.14”
*/
class Circle extends Shape implements IshapeCaculate {
private double radius;
public Circle(double radius) {
this.radius = radius;
}
@Override
public double getArea() {
return Math.PI * Math.pow(radius, 2);//圆周率*半径的平方
}
@Override
public double getPerimeter() {
return 2 * 3.1415926 * radius;
}
public String toString() {
return "圆形 radius=" + radius + ",perimeter=" + getPerimeter() + ", area=" + getArea();
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询