Box类

//This program uses inheritance to extend Box.
class Box
{
    double width;
    double height;
    double depth;
    //construct clone of an object
    Box(Box ob)
    {
        width = ob.width;
        height = ob.height;
        depth = ob.depth;
    }
    //constructor used when all dimensions specified
    Box(double w, double h, double d)
    {
        width = w;
        height = h;
        depth = d;
    }
    //constructor used when no dimensions spcified
    Box()
    {
        width = -1;
        height = -1;
        depth = -1;
    }
    //constructor used when cube is created
    Box(double len)
    {
        width = height = depth = len;
    }
    double volume()
    {
        return width*height*depth;
    }
}

//Here, Box is extended to include weight.
class BoxWeight extends Box
{
    doble weight;
    BoxWeight(double w, double h,  double d, double m)
    {
        width = w;
        height = h;
        depth = d;
        weight = m;
    }
}

class DemoBoxWeight
{
    public static void main(String args[])
    {
        BoxWeight mybox1 = new BoxWeight(10, 20, 15, 34.3);
        BoxWeight mybox2 = new BoxWeight(2, 3, 4, 0.076);
        double vol;
        vol = mybox1.volume();
        System.out.println("Volume of mybox1 is" + vol);
        System.out.println("Weight of mybox1 is" + mybox1.weight);
        System.out.println();
        vol = mybox2.volume();
        System.out.println("Volume of mybox2 is" + vol);
        System.out.println("Weight of mybox2 is" + mybox2.weight);
    }
}
Box类示例,帮助理解java继承,动态构造函数。

你可能感兴趣的:(Java)