Справочник по Java/Java-Shildt-194DemoBoxWeight
Java-Shildt-194DemoBoxWeight
{{Готовность|0%}}
Содержание
- Java-Shildt-100BitLogic
- Java-Shildt-102ByteShift
- Java-Shildt-102MultByTwo
- Java-Shildt-104HexByte
- Java-Shildt-105ByteUShift
- Java-Shildt-106OpBitEquals
- Java-Shildt-108BoolLogic
- Java-Shildt-110Ternary
- Java-Shildt-116IfElse
- Java-Shildt-117SampleSwitch
- Java-Shildt-130ForEach2
- Java-Shildt-133Nested
- Java-Shildt-143BoxDemo
- Java-Shildt-143BoxDemo2
- Java-Shildt-149BoxDemo3
- Java-Shildt-150BoxDemo4
- Java-Shildt-152BoxDemo5
- Java-Shildt-154BoxDemo6
- Java-Shildt-155BoxDemo7
- Java-Shildt-159Stack
- Java-Shildt-160TestStack
- Java-Shildt-161Overload
- Java-Shildt-162Overload2
- Java-Shildt-164Box
- Java-Shildt-165OverloadCons
- Java-Shildt-166PassOb
- Java-Shildt-167OverloadCons2
- Java-Shildt-168CallByValue
- Java-Shildt-169CallByRef
- Java-Shildt-169RetOb
- Java-Shildt-170Recursion
- Java-Shildt-172Recursion2
- Java-Shildt-173AccessTest
- Java-Shildt-174Stack
- Java-Shildt-175TestStack
- Java-Shildt-176UseStatic
- Java-Shildt-177StaticByName
- Java-Shildt-178Length
- Java-Shildt-178TestStack2
- Java-Shildt-180InnerClassDemo
- Java-Shildt-180InnerClassDemo2
- Java-Shildt-181InnerClassDemo3
- Java-Shildt-182StringDemo
- Java-Shildt-183StringDemo2
- Java-Shildt-184CommandLine
- Java-Shildt-184StringDemo3
- Java-Shildt-185PassArray
- Java-Shildt-186VarArgs
- Java-Shildt-187VarArgs2
- Java-Shildt-187VarArgs3
- Java-Shildt-188VarArgs4
- Java-Shildt-191SimpleInheritance
- Java-Shildt-193Access
- Java-Shildt-194DemoBoxWeight
- Java-Shildt-195ColorBox
- Java-Shildt-195RefDemo
- Java-Shildt-197BoxWeight
- Java-Shildt-197DemoSuper
- Java-Shildt-200UseSuper
- Java-Shildt-70Light
- Java-Shildt-71Area
- Java-Shildt-72CharDemo
- Java-Shildt-72CharDemo2
- Java-Shildt-77DynInit
- Java-Shildt-87TwoDArray
- Java-Shildt-89Matrix
- Java-Shildt-89ThreeDMatrix
- Java-Shildt-94BasicMath
- Java-Shildt-96OpEquals
- Java-Shildt-97IncDec
- Java-Shildt-Example
- Java-Shildt-Example2
- Java-Shildt-ForTest
- Java-Shildt-IfSample
Полный справочник по Java. Java SE 6 Edition. 7-е издание. Герберт Шилдт. "Вильямс", Москва - Санкт-Петербург - Киев, 2007, стр.194.
// 194
// В этой программе наследование используется для расширения класса Box.
class Box {
double width;
double height;
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; // значение -1 используется для указания
height = -1; // неинициализированного
depth = -1; // параллелепипеда
}
// конструктор, используемый при создании куба
Box(double len) {
width = height = depth = len;
}
// вычисление и возврат объема
double volume( ) {
return width * height * depth;
}
}
// Расширение класса Box включением в него веса.
class BoxWeight extends Box {
double weight; // вес параллелепипеда
// конструктор BoxWeight
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 mybox1 equal " + vol);
System.out.println("Weight mybox1 equal " + mybox1.weight);
System.out.println();
vol = mybox2.volume( );
System.out.println("Volume mybox2 equal " + vol);
System.out.println("Weight mybox2 equal " + mybox2.weight);
}
}