Page 37 - 6253
P. 37
double volume() {
return width*height*depth;
}
// Визначення методу задання розмірів коробки
void setDim(double w, double h, double d) {
width = w;
height = h;
depth = d;
}
}
1) у методах класу посилання на змінні класу відбувається безпосередньо без
посилання на об’єкт;
2) у методі setDim() використані параметри (параметр – це визначена в
методі змінна, якій внаслідок виклику методу присвоюється значення, яке
називають аргументом;
3) коректно розроблена програма – це програма, в якій доступ до змінних
класу відбувається через методи класу (у нашому випадку реалізовано лише
присвоєння цим змінним значень у методі setDim()).
Передавання аргументів у методи здійснюється двома способами. Прості типи
в мові Java передаються за значеннями (call-by-value), тобто у формальний параметр
копіюється значення аргументу Все, що відбувається з параметром, не впливає на
аргумент.
Об’єкти передаються за посиланням (call-by-reference). Тобто параметрові
присвоюється значення посилання на об’єкт. Обидва посилання – і аргумент, і
параметр – вказують на один і той же об’єкт у пам’яті. Тому всі зміни, які відбулися
в методі, впливають на об’єкт, переданий як аргумент.
Використання об’єктів у ролі параметрів
В усіх попередніх прикладах у ролі параметрів методів передавалися прості
типи. Проте в метод класу в ролі параметра можна передати об’єкт будь-якого типу.
Розглянемо програму:
36