Page 75 - 6253
P. 75

можна  викликати,  для  будь-якої  форми  конструктора,  визначеного  у  суперкласі.

            Програма  виконає  той  конструктор,  який  відповідає  вказаним  аргументам.  Як

            приклад приведемо повну реалізацію класу BoxWeight, яка пропонує конструктори

            для  різних  способів  створення  коробок.  У  кожному  випадку  оператор  super()

            викликається з відповідним набором аргументів.

                    class Box {

                     private double width;

                     private double height;

                     private double depth;



                     Box(Box ob) {

                       width = ob.width;

                       height = ob.height;

                       depth = ob.depth;

                     }

                     Box(double w, double h, double d) {

                       width = w;

                       height = h;

                       depth = d;

                     }

                     Box() {

                       width = -1;

                       height = -1;

                       depth = -1;

                     }

                     Box(double len) {

                       width = height = depth = len;

                     }

                     double volume() {

                       return width * height * depth;

                     }




                                                              74
   70   71   72   73   74   75   76   77   78   79   80