Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Бишоп Д. -> "Эффективная робота Java 2" -> 127

Эффективная робота Java 2 - Бишоп Д.

Бишоп Д. Эффективная робота Java 2 — Спб.: Питер, 2002. — 592 c.
ISBN 966-552-107-1
Скачать (прямая ссылка): effektivnayarabotajava2002.djvu
Предыдущая << 1 .. 121 122 123 124 125 126 < 127 > 128 129 130 131 132 133 .. 259 >> Следующая

Batch tempi; tempi - 8fO}; tempi.instock
B[0J ---------
:Betch___________
instock = 5.0 seHByDate = 23-Jun-00
— 3;
Bateh
instock = 2,0 sellByDate = 23-Jun-O0
tempt
Клонирования
&nch temp2 * (Batch) B[0]*ck)ne{)
temp2.lnStocfc >=3;
era
Instock = 5.0 seUByDate = 23-Jurc-GQ
tamp2
:Bartch
instock - 2.0 sallByDate = 23-Jun-DG
Рис. 8.6. Различие между операциями присвоения и клонировония
Модифи кагоры
Классам и членам классов могут быть присвоены модификаторы, которые указывают, как их надлежит использовать. Не все модификаторы применимы к классам: некоторые предназначены только для членов (методов, переменных). В табл. 8.4 описана область применения главных модификаторов Java, а также указываются разделы этой книги3 в которых соответствующие темы рассмотрены в полном объеме.
Тоблица 8.4. Назначение основных модификаторов, применяемых по отношению * классам и членам, с указанием разделов, содержащих информацию о них
Не указан
public
private
protected
abstract
Недоступен
Экземпляр не может быть создан
Доступен только в рамках 5.1 своего пакета
Доступен везде, где указан 4-6 его шкет
Недоступен

hlL Кс -Vs X . .vi
«w-'tvlir' чіі&і
Доступны только 5*1
в рамках своего пакета
Доступны везде, іде 4.6
указан их класс
Доступны только 5 Л
в рамках их собственного класса
Доступны в рамках их 9.2
пакета и подклассов
Метод применяется 9 А
не там, іде он определен, а в подклассе
Свойства объектов
289
final
He имеет подклассов
Значение не может быть 8.2 изменено
Метод не может быть 9.2 переопределен
static
не внутренний
Класс верхнего уровня, 8.2
.2 Доступ к членам класса 3.1
осуществляется путем указания имени их класса
synchronized Недоступен
13*3 Другие методы не могут 13,3
оперировать этими же
данными в это же время
Модификаторы private и public уже использовались нами в классах. Мы еще вернемся к ним в следующей главе, во время разговора о модификаторах защиты, модификаторах, заданных по умолчанию, и модификаторе protected, но прежде рассмотрим наследование. Материал о модификаторе abstract изложен в главе 9, а о модификаторе synchronized — в главе 13. На данном этапе мы обсудим внутренние классы, которые описаны также в главе f І.
Статические члены
Когда класс реализуется, создаваемый объект имеет переменные этого класса, которые становятся доступными другим его объектам после указания имени. Нам уже знаком данный процесс. Однако существует возможность единожды задать члены для всех объектов класса. Такие члены объявляются как статические (static), а доступ к ним осуществляется путем указания имени их класса с точкой (т.е. имя класса, чл ен_класса). Их называют также членами класса. Описание модификатора static вы найдете в разделе 3.1.
Рассмотрим два примера. Класс java, lang .Math (см. раздел 3.1) имеет несколько полезных методов для выполнения математических вычислений, при которых объекты не создаются: исходные значения указываются посредством параметров, а ответы возвращаются как результаты выполнения методов, например:
у = Math.sin fx)}
I
Для указания переменных, значения которых ассоциируются с классом, надлежит использовать модификатор s tat і с. Например, в классе Curio (вспомните программу
о продаже древностей) мы можем определить общий объем партии товара и количество проданных единиц за некоторый период времени, Структура новош класса Curio будет следующей:
class Curio {
// Внутренний класс, предоставляющий сведения о древности //и выполняемых по отношению к ней операциях.
// Расширен параметром stock
// и двумя методами: для добавления и продажи товара (stock) .
String паше; int price;
String description; int Stock;
static.,int totalStock - 0; static int totalSold = 0;
290
Глоно 8. Объекты: применение но практике
// Конструктор копирует начальные значения*
Curio (String п, int pr String df int t) { name = n; price = p? description - d; display.prompt (name,t);
J
// Три новых действия, выполняемых по отношению к древноотям, void addStock (int п) { stock +- п; totalStock += п;
J
void sell (int л) throws StockException t if (stock >= n) { stock -= n; totalStock -= n; totalSoid -+= n;
)
else
throw new StockException
? "Недостаточно товара. В наличии имеется "+stock+" единиц. 11) ;
}
¦¦¦ другие методы как и раньше
Предыдущая << 1 .. 121 122 123 124 125 126 < 127 > 128 129 130 131 132 133 .. 259 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.