java 5.0 類別題型有大大會的請進來,救我ˊˋ

請幫忙題目如下:

檔案名稱abstract_class.java,架構如圖1所示

1. iShape抽象類別裡有二個抽象方法double getVolume()和void setColor(String str),分別可用來顯示物件的體積和顏色。

2. CBox類別的資料成員有length、width、height與color成員,其中length、width與height的型態為int,color的型態為String。建構子(用於設定長、寬、高);方法有setColor()(設定顏色)、getColor()(取得顏色)與getVolume()(取得體積)、setVolume()(設定體積)和show()(顯示長、寬、高、體積與顏色)。( CBox物件的體積公式為length*width*height)

3. CSphere類別裡的資料成員有radius與color成員,其中radius的型態為double,color的型態為String。建構子(用於設定半徑);方法有setColor()(設定顏色)、getColor()(取得顏色)與getVolume()(取得體積)、setVolume()(設定體積)和show()(顯示半徑、體積與顏色)。( CSphere物件的體積為 4*pi*radius* radius* radius/3)

1 Answer

Rating
  • 1 decade ago
    Favorite Answer

    已寄信給您嘍

    2009-04-10 18:08:04 補充:

    abstract class iShape{

    abstract double getVolume();//顯示物件體積

    abstract void setColor(String str);//顯示物件顏色

    double volume;//額外新增一個存放體積值的變數

    }

    class CBox extends iShape{

    int length,width,height;

    String color;

    CBox(int length,int width,int height){//設定長、寬、高

    this.length = length;

    this.width = width;

    this.height = height;

    }

    public void setColor(String str){//設定顏色

    color = str;

    }

    public String getColor(){//取得顏色

    return color;

    }

    public double getVolume(){//取得體積

    return volume;

    }

    public void setVolume(){//設定體積

    volume = length*width*height;

    }

    public void show(){//顯示長、寬、高、體積與顏色

    System.out.println("長=" + length+" 寬: " + width+" 高: " + height);

    System.out.println("體積="+getVolume());

    System.out.println("顏色="+getColor());

    }

    }

    class CSphere extends iShape{

    double radius;

    String color;

    CSphere(double radius){//設定半徑

    this.radius = radius;

    }

    public void setColor(String str){//設定顏色

    color = str;

    }

    public String getColor(){//取得顏色

    return color;

    }

    public void setVolume(){//設定體積

    volume = 4*Math.PI*radius* radius* radius/3;

    }

    public double getVolume(){//取得體積

    return volume;

    }

    public void show(){//顯示顯示半徑、體積與顏色

    System.out.println("半徑=" + radius);

    System.out.println("體積=" + getVolume());

    System.out.println("顏色=" + getColor());

    }

    }

    public class abstract_class {

    public static void main(String[] args){

    CBox c = new CBox(2,5,2);

    c.setColor("綠色");

    c.setVolume();

    c.show();

    System.out.println();

    CSphere cs = new CSphere(2.5);

    cs.setColor("藍色");

    cs.setVolume();

    cs.show();

    }

    }

    Source(s): 有問題再提問
Still have questions? Get your answers by asking now.