高手帮忙设计一个java程序 急用 题目如下 定义一抽象类Column,然后派生出子类实现相关功能。要求如下:
定义一抽象类Column,然后派生出子类实现相关功能。要求如下:(1)抽象类Column的成员变量:length表示柱体底面长width表示柱体底面宽height表示柱体...
定义一抽象类Column,然后派生出子类实现相关功能。要求如下:
(1)抽象类Column的成员变量:
length 表示柱体底面长
width 表示柱体底面宽
height 表示柱体高
(2)抽象类Column的方法:
Column() 构造方法,初始化相关的成员变量
double getXXX() 分别获得柱体长、宽、高等类似的数据
double getArea() 求表面积
double getVolume() 求得柱体的体积
? void display() 将柱体的长、宽、高、周长和体积输出
(3)分别声明抽象类的子类Cylinder、Cube和Ball,实现抽象类中的抽象方法
(4)声明以最终类进行测试,分别输出圆柱体、立方体和球的相关数据,计算表面积和体积并输出 展开
(1)抽象类Column的成员变量:
length 表示柱体底面长
width 表示柱体底面宽
height 表示柱体高
(2)抽象类Column的方法:
Column() 构造方法,初始化相关的成员变量
double getXXX() 分别获得柱体长、宽、高等类似的数据
double getArea() 求表面积
double getVolume() 求得柱体的体积
? void display() 将柱体的长、宽、高、周长和体积输出
(3)分别声明抽象类的子类Cylinder、Cube和Ball,实现抽象类中的抽象方法
(4)声明以最终类进行测试,分别输出圆柱体、立方体和球的相关数据,计算表面积和体积并输出 展开
展开全部
import java.lang.StrictMath.*;
abstract class Column
{
static double s_length; //length 是保留字所以没有用它
static double s_width;
static double s_height;
abstract double getArea();
abstract double getVolume();
abstract void display();
}
class Cylinder extends Column //圆柱体
{
double area;
double volume;
private final double PI=Math.PI; //对PI的使用
void getData(double l,double w, double h)
{
s_length=l; s_width=w; s_height=h;
}
double getVolume()
{
return volume=(s_width*s_width/4)*PI*s_height;
}
double getArea()
{
return area=(PI*s_width*s_height)*(s_width*s_width/2)*PI*s_height;
}
void display()
{
System.out.print("体积:"+getVolume()+" 面积:"+getArea());
}
}
/*
class Cube extends Column //立方体
{
与Cylinder 类似
}
class Ball extends Column //球
{
与Cylinder 类似
}
*/
public class Test
{
public static void main(String args[] )
{
Cylinder yzt=new Cylinder();
yzt.getData(8,2,4);
yzt.getVolume();
yzt.getArea();
yzt.display();
}
}
abstract class Column
{
static double s_length; //length 是保留字所以没有用它
static double s_width;
static double s_height;
abstract double getArea();
abstract double getVolume();
abstract void display();
}
class Cylinder extends Column //圆柱体
{
double area;
double volume;
private final double PI=Math.PI; //对PI的使用
void getData(double l,double w, double h)
{
s_length=l; s_width=w; s_height=h;
}
double getVolume()
{
return volume=(s_width*s_width/4)*PI*s_height;
}
double getArea()
{
return area=(PI*s_width*s_height)*(s_width*s_width/2)*PI*s_height;
}
void display()
{
System.out.print("体积:"+getVolume()+" 面积:"+getArea());
}
}
/*
class Cube extends Column //立方体
{
与Cylinder 类似
}
class Ball extends Column //球
{
与Cylinder 类似
}
*/
public class Test
{
public static void main(String args[] )
{
Cylinder yzt=new Cylinder();
yzt.getData(8,2,4);
yzt.getVolume();
yzt.getArea();
yzt.display();
}
}
展开全部
//只给你写了一个Cylinder其他的类似,不同的子类函数体里面自己实现下就ok了
abstract class Column{
private double length;
private double width;
private double height;
public double getHeight() {
return height;
}
public double getLength() {
return length;
}
public double getWidth() {
return width;
}
public Column(double length,double width,double height){
this.height=height;
this.length=length;
this.width=width;
}
abstract double getArea() ;
abstract double getVolume() ;
abstract void display();
}
class Cylinder extends Column {
@Override
double getArea() {
//方法自己写
return 0;
}
@Override
double getVolume() {
//方法自己写
return 0;
}
@Override
void display() {
//方法自己写
}
//Column cylinder = new Cylinder();
public Cylinder(double length,double width,double height){
super(length,width,height);
}
}
abstract class Column{
private double length;
private double width;
private double height;
public double getHeight() {
return height;
}
public double getLength() {
return length;
}
public double getWidth() {
return width;
}
public Column(double length,double width,double height){
this.height=height;
this.length=length;
this.width=width;
}
abstract double getArea() ;
abstract double getVolume() ;
abstract void display();
}
class Cylinder extends Column {
@Override
double getArea() {
//方法自己写
return 0;
}
@Override
double getVolume() {
//方法自己写
return 0;
}
@Override
void display() {
//方法自己写
}
//Column cylinder = new Cylinder();
public Cylinder(double length,double width,double height){
super(length,width,height);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询