Главная » Java

Истинное значение protected

Добавлено Дата: 6 May, 2012 категория: Java

Ранее мы кратко упомянули о том, что объявление члена класса защищенным (то есть с ключевым словом protected) означает возможность обращения к нему из классов, расширяющих данный, — однако этому замечанию не хватает формальной четкости. Выражаясь более точно, к защищенному члену класса можно обращаться через ссылку на объект, относящийся по меньшей мере к тому же типу, что и класс. Пример поможет нам разобраться с этим утверждением. Предположим, имеется следующая иерархия классов:

Читать »

Классы Float и Double

Добавлено Дата: 6 May, 2012 категория: Java

расширяют Number и служат для представления типов float и double в виде класса. За редкими исключениями, имена методов и константы совпадают для обоих типов. Приведенный ниже список соответствует классу Float, однако float и Float всюду могут быть заменены на double и Double соответственно, что даст эквивалентные поля и методы для класса Double. Помимо стандартных методов класса Number, классы Float и Double содержат следующие методы:

Читать »

Дублирование объектов

Добавлено Дата: 5 May, 2012 категория: Java

Метод Object.сlone помогает производить в ваших классах дублирование объектов. При дублировании возвращается новый объект, исходное состояние которого копирует состояние объекта, для которого был вызван метод clone. Все последующие изменения, вносимые в объект-дубль, не изменяют состояния исходного объекта.

Читать »

Создание процессов

Добавлено Дата: 4 May, 2012 категория: Java

Как упоминалось выше, в программах Java могут одновременно выполняться несколько потоков. Большинство систем, на которых функционирует среда Java, также поддерживают запуск нескольких программ. Приложения Java могут вызывать новые программы, обращаясь к одной из двух форм метода System.exec. Каждый успешный вызов exec создает новый объект Process, который представляет собой работающую программу. Вы можете запросить информацию о состоянии процесса и вызвать методы, управляющие его ходом. Существуют две основные формы метода exec:

Читать »

Класс Hashtable

Добавлено Дата: 4 May, 2012 категория: Java

Хеш-таблицы представляют собой распространенный  механизм для хранения пар ключ/элемент. Они обладают такими достоинствами, как универсальность  и простота, а также высокая эффективность при хорошо продуманной генерации хеш-кода. реализует интерфейс Dictionary. Он обладает определенной емкостью и средствами, определяющими момент увеличения таблицы. Расширение хеш-таблицы требует повторного хеширования всех ее элементов в соответствии с их новым положением в увеличенной таблице, так что важно обеспечить однократное изменение таблицы.

Читать »

Расширение класса

Добавлено Дата: 4 May, 2012 категория: Java

Одним из самых больших достоинств объектно-ориентированного программирования является возможность такого расширения, или создания подкласса, существующего класса, при котором можно использовать код, написанный для исходного класса.

При расширении класса на его основе создается новый класс, наследующий все поля и методы расширяемого класса. Исходный класс, для которого проводилось расширение, называется суперклассом.

Читать »

Принятие решений с помощью оператора if

Добавлено Дата: 4 May, 2012 категория: Java

В  нашей  жизни  мы  постоянно  принимаем  решения:  если она скажет мне  так  –  то  я  отвечу  ей  вот  так,  в  противном  случае  я  сделаю  по-­? другому. В Java есть оператор if, который проверяет, является ли некое выражение истинным (true) или ложным (false).

Читать »

Класс Math

Добавлено Дата: 3 May, 2012 категория: Java

состоит из статических констант и методов, предназначенных  для математических  вычислений общего назначения. Все операции выполняются в арифметике double.

Константа Math.E представляет значение числа e (2.7182818284590452354), а Math.PI — значение числа p (3.14159265358979323846). Значения углов в методах задаются в радианах, а все параметры и возвращаемые значения имеют тип double, если явно не оговорено обратное:

Читать »

Оператор for

Добавлено Дата: 3 May, 2012 категория: Java

используется для выполнения цикла по значениям из определенного диапазона. Он выглядит следующим образом:

for (инициализация; логическое выражение; приращение)

оператор

Такая запись эквивалентна

{

инициализация;

while (логическое выражение) {

Читать »

Уровни доступа

Добавлено Дата: 3 May, 2012 категория: Java

 методы и  переменные  класса  могут  иметь  следующие уровни доступа: public, private, protected  и package.  Наш

класс PingPongEngine имеет уровень  доступа public. Это значит, что  у любого класса есть доступ к нему. Давайте  проведем простой эксперимент  — удалим ключевое слово public из  объявления класса PingPongEngine.     Теперь   класс   PingPongTable  не   будет компилироваться,   указывая  на  ошибки  PingPongEngine cannot be resolved  to  a  type  (Невозможно  определить  тип  PingPongEngine)  и  The type   engine.PingPongEngine    is    not    visible    (Тип    данных engine.PingPongEngine  невидим).  Это   значит,   что   класс PingPongTable не видит больше класс PingPongEngine.

Читать »

Приведение типов – casting

Добавлено Дата: 2 May, 2012 категория: Java

 В следующем  примере  я  покажу,  как  определить,  какая  кнопка  была нажата,    вызывая  метод  getSource()  класса  ActionEvent. Переменная  evt – это ссылка на объект-­?событие,  который живет где-­?то в  памяти  компьютера. Но,  как  написано  в  документации  Java, метод getSource() возвращает  источник  события  как  экземпляр  типа Object,  который  является  предком  всех  классов  Java,  включая компоненты окна.

Читать »

Переход к Eclipse IDE

Добавлено Дата: 2 May, 2012 категория: Java

Программисты  обычно  работают  с  инструментом,  которыйназывается  интегрированная   среда   разработки   IDE  (Integrated Development Environment). Программы можно писать, компилировать и запускать  прямо  в  этой  среде.  В  IDE  также  есть  такая  штука,  как Справка,  содержащая  все  элементы  языка,  которая  упрощает  поиск  и исправление ошибок  в программах. Некоторые программы  IDE имеют высокую  стоимость,  однако  есть  превосходная  бесплатная  IDE  под названием  Eclipse.  Ее  можно  загрузить  с  веб-­?сайта  www.eclipse.org. В этой  главе я помогу вам загрузить и установить Eclipse IDE на ваш компьютер и создать в этой среде проект с названием Hello World. После  этого все наши программы  мы  будем создавать в этой среде. Устраивайтесь поудобнее  в  Eclipse  — это превосходный  инструмент, который используется множеством профессиональных программистов на Java.Установка Eclipse IDEОткройте веб-­?сайт  www.eclipse.org и нажмите  в верхней правой частистраницы кнопку Download Eclipse («Загрузка Eclipse»).

Читать »

Апплет Крестики-Нолики

Добавлено Дата: 2 May, 2012 категория: Java

Когда вы заходите на свой любимый сайт, есть небольшая вероятность,  что  некоторые  из  игр  или  других  приложений  на  сайте были   написаны  на   Java   с   помощью   технологии   так  называемых апплетов.  Эти  специальные  приложения  живут  и  работают  внутри окна веб-­?браузера. Веб-­?браузеры понимают  простой  язык  разметки, который   называется  HTML,  который  позволяет  вам  вставлять специальные  метки (“теги”) в текстовые файлы, чтобы  они красиво отображались в браузерах.  Кроме текста, вы можете вставлять в файлы HTML  специальный  тег  <applet>,  который  подскажет  браузеру,  где найти и как правильно показать апплет Java.  Java-­?апплеты  загружаются на ваш компьютер из  интернета, как  часть веб-­?странички, а браузер достаточно умен, чтобы  запустить свою JVM для  того, чтобы запустить эти апплеты.

Читать »

Класс StreamTokenizer

Добавлено Дата: 2 May, 2012 категория: Java

Разделение входного потока на отдельные лексемы встречается довольно часто, поэтому пакет java.io содержит специальный класс StreamTokenizer для выполнения простейшего лексического анализа. В настоящее время этот класс в полной мере работает лишь с младшими 8 битами Unicode, составляющими подмножество символов Latin-1, поскольку внутренний массив класса, хранящий информацию о категориях символов, состоит только из 256 элементов. Символы, превышающие \u00ff, считаются алфавитными. Хотя в подавляющем большинстве случаев это действительно так (собственно, большая часть символов относится к алфавитным), вы, например, не сможете назначить в качестве ограничителя символ ‘?‘ (\u270D). Даже с учетом этого условия выделение лексем во многих случаях происходит нормально.

Читать »

Класс Runtime

Добавлено Дата: 1 May, 2012 категория: Java

Объекты класса Runtime описывают состояние runtime-системы Java и те операции, которые она может выполнить. Для получения объекта Runtime, соответствующего текущему runtime-контексту, следует вызвать статический метод Runtime.getRuntime.

Одна из операций, выполняемых текущим runtime-контекстом, — получение входного или выходного потока, переводящего символы локального набора в их Unicode-эквиваленты. Многие существующие системы работают с национальными  алфавитами, использующими

Читать »