Рекомендации по проектированию классов Java

Рекомендации по проектированию классов Java1. Всегда храните данные в переменных, объявленных как private.

Первое и главное требование: всеми средствами избегайте нарушения инкапсуляции. Иногда приходиться писать методы доступа к полю или модифицирующие методы, но предоставлять доступ к полям не следует. Горький опыт показал, что способ представления данных может изменяться, однако порядок их использования изменяется гораздо реже. Если данные приватны, их представление не влияет на использующий класс, потому ошибки искать легче. Читать

Вулкан игровые автоматы

Вулкан игровые автоматыЗдравствуйте дорогие читатели блога! Недавно мы с вами поговорили о бесплатных игровых автоматах. Так вот, сегодня мы поговорим о игровых автоматах вулкан. Еще недавно игровые автоматы вулкан с их яркими неоновыми вывесками могли увидеть все, просто прогуливаясь по улицам своего города. Вулкан известен почти всем, кто пробовал когда-либо играть в аппараты. Читать

Бесплатные игровые автоматы

Бесплатные игровые автоматыС развитием интернета огромное количество азартных людей перешли от обычных автоматов, которые стоят в казино, к игровым автоматам онлайн. Это позволяет, не выходя из дома, получать все те же ощущения, а проработанная графика ведет к полному погружению в мир игры.

К сожалению, игровые автоматы не выполняют много функций. Дергаем ручку, смотрим на бегущие символы. Дергаем ручку, и опять смотрим на символы. Исключения – разные бонусные игры, в которых игрок еще может выбрать цвет фишки или другую атрибутику. Да, именно из-за простоты они так полюбились миру, отключаем голову и расслабляемся. Но иногда очень хочется повлиять на результат. Читать

Что такое потоки Java

Что такое потоки JavaНачнем с рассмотрения программы, которая не использует средств многопоточности, и, как следствие, затрудняет пользователю выполнение нескольких задач сразу. После того, как мы проанализируем ее, мы покажем, как легко заставить эту программу запускать отдельные потоки. Эта программа будет анимировать прыгающий мячm постоянно перемещая его по экрану и меняя направление движения, когда он встретит преграду в виде стены.

Как только вы щелкнете на кнопке Start(Пуск), программа выбросит мяч из правого левого угла и он начнет прыгать. Обработчик события кнопки Start вызывает метод addBall. Этот метод содержит цикл из 1000 движений. Каждый вызов move() перемещает мяч на небольшое расстояние, изменяет направление движения, если он отскакивает от стены, и затем перерисовывает панель. Читать

Интерфейсы коллекций Java

Интерфейсы коллекций Java

Начальная версия Java предлагала лишь небольшой набор классов наиболее часто употребляемых структур данных: Vector, Stack, Hashtable, BitSet  и интерфейс Enumeration, предоставляющий абстрактный механизм для посещения элементов в произвольном контейнере. Безусловно, это было мудрое решение — на реализацию всеобъемлющей библиотеки классов коллекции потребовалось время и опыт.

К появлению Java SE 1.2 проектировщики поняли, что настало время создать полноценный набор структур данных. При этом они столкнулись с множеством противоречивых требовании. Они хотели, чтобы библиотека была маленькой и легкой в изучении. Нужно было избежать сложности стандартной библиотеки шаблонов(STL) языка C++, но при этом позаимствовать «обобщенные алгоритмы», впервые появившиеся в STL. Необходимо было обеспечить совместимость унаследованных классов коллекций с новым каркасом. Читать

Флажки опции и переключатели в меню Java

Флажки опции и переключатели в меню JavaКогда пользователь щелкает на пункте меню, флажки автоматически устанавливаются или сбрасываются, а состояние переключателей изменяется в соответствии с выбранным пунктом. Если не принимать во внимание внешний вид, флажки и опции можно рассматривать как обычные пункты меню. Рассмотрим, например, как создается пункт меню с флажком опции. Читать

Пиктограммы в пунктах меню Java

Пиктограммы в пунктах меню JavaПункты меню очень похожи на кнопки. Фактически класс JMenuItem расширяет класс AbstractButton. Как и кнопки, меню могут иметь текстовую метку, пиктограмму или и то и другое в тот же момент. Пиктограмму можно указать в конструкторе JMenuItem(String, Icon) или JMenuItem(Icon), либо задать с помощью метода setIcon(), унаследованного классом JMenuItem от класса AbstractButton. Вот пример: Читать

Определение подходящего размера фрейма

Определение подходящего размера фреймаЗапомните, если размер не задан явно, все фреймы по умолчанию имеют размер 0x0 пикселей. Чтобы не усложнять наш пример, мы задали размеры фреймов так, чтобы окно нормально отображалось на большинстве мониторов. Однако в профессиональных приложениях сначала нужно проверить разрешающую способность экрана и написать код, изменяющий размер фрейма в соответствии с полученной величиной: окно, которое прекрасно смотрится на кране портативного компьютера, на экране дисплея с большой разрешающей способностью будет выглядеть как почтовая марка.

Для того чтобы определить размер экрана, надо выполнить следующие действия. Сначала следует вызвать статический метод getDefaultToolkit() класса Toolkit, который вернет объект Toolkit. (Класс Toolkit содержит много методов, предназначенных для взаимодействия с оконной системой конкретной платформы). Затем надо вызвать метод getScreenSize(), который вернет размер экрана в виде объекта Dimension. Объект Dimension содержит ширину и высоту в общедоступных(!) переменных width и height. Ниже представлен фрагмент кода, с помощью которого можно определить размер экрана. Читать

Позиционирование фрейма в Java

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

  • Методы setLocation() и setBounds() устанавливают положение фрейма.
  • Метод dispose() закрывает окно и освобождает все системные ресурсы, использованные при его создании. Читать

HTML-дескрипторы и атрибуты для работы с апплетами Java

HTML-дескрипторы и атрибуты для работы с апплетами JavaДескриптор <applet> в его наиболее базовой форме выглядит приблизительно следующим образом:

<applet code=»HelloWorldApplet.class» width=100 height=100>

Как уже было сказано ранее, атрибут code задает имя класса; значение этого атрибута представляет собой имя файла, оканчивающееся расширением .class. Атрибуты width и height определяет размеры окна, в котором будет размещен апплет. Значения обоих параметров задаются в пикселях. Нужно также указать закрывающий дескриптор </applet>. Текст, размещенный между дескрипторами <applet> и </applet>, выводится на экран в том случае, если браузер не может отобразить апплет. Атрибуты code, width и height необходимы. Если хотя бы один из них будет пропущен, браузер не сможет загрузить апплет. Читать