于达——第九次作业

一、题目:矩形类中具有长、宽、面积三个成员变量和计算面积的方法,再创建矩形类的子类——正方形类,重写计算面积的方法。在柱体类中,创建矩形类对象做成员变量作为柱体的底,定义换底和计算体积的方法。在主类中,计算一个以矩形对象为底的柱体体积,再利用换底方法更换为正方形底,并再次计算体积。

二、代码以及注释

/**
 * 先定义一个矩形类。里面有长。宽。面积三个成员变量,写出矩形类的构造方法。方法里有两个参数,定义一个计算面积的方法
 * 定义一个正方形类继承矩形类,定义构造方法。方法里面一个参数。构造方法里用super()调用父类的构造方法。重写计算面积的
 * 方法。定义一个柱体类。里面有矩形对象p1。高。体积三个成员变量。定义换底方法与获取柱体体积的方法。
 */
class juxing {
    int chang;
    int kuan;
    int area;

    public juxing(int chang, int kuan) {
        this.chang = chang;
        this.kuan = kuan;
    }

    void setArea() {
        area = chang * kuan;
    }

}

class zhengfangxing extends juxing {

    public zhengfangxing(int bian) {
        super(bian, bian);
    }

    void setArea() {
        area = chang * chang;
    }
}

class zhuti {
    juxing p1;
    int gao;
    int volum;

    zhuti(juxing p1, int gao) {
        this.p1 = p1;
        this.gao = gao;
    }

    void setp1(juxing p1) {// 换底方法
        this.p1 = p1;
    }

    void getvolum() {
        volum = p1.area * gao;
    }
}

public class examplesuper {
    public static void main(String[] args) {
        juxing p1 = new juxing(3, 4);
        p1.setArea();
        zhuti c = new zhuti(p1, 5);
        c.getvolum();
        System.out.println("长方形柱体体积为:" + c.volum);
        c.setp1(new zhengfangxing(5));
        c.p1.setArea();
        c.getvolum();
        System.out.println("正方形柱体体积为" + c.volum);

    }

}

运行结果:

猜你喜欢

转载自www.cnblogs.com/chen4635/p/11594965.html