Диспетчер компоновки BorderLayout Java

Диспетчер компоновки BorderLayout JavaДиспетчер компоновки BorderLayout по умолчанию устанавливается для панели содержимого, присутствующей в объекте JFrame. В отличие от диспетчера FlowLayout, который полностью контролирует позицию каждого компонента, диспетчер BorderLayout позволяет вам выбрать место для каждого компонента.

Компонент можно разместить в центре панели, в ее верхней или нижней части, а также слева или справа.

Например:

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

Как создать всплывающее меню в Java

Как создать всплывающее меню в JavaВсплывающее, или контекстные, меню (pop-up menu) — это меню, не связанные со строкой, а отображающейся в произвольно выбранной позиции на экране.

Всплывающее меню создается так же, как и обычное, за одним исключением — оно не имеет заголовка:

Пункты меню добавляются, как обычно:

Читать

Чтение и запись байтов Java

Чтение и запись байтов JavaКласс InputStream имеет следующий абстрактный метод: abstract int read(). Этот метод считывает один байт и возвращает либо считанный байт, либо -1, если наталкивается на конец потока входных данных. Разработчик конкретного класса потока входных данных может переопределять этот метод так, чтобы он предоставлял какую-то полезную функциональную возможность.

Например, в классе FileInputStream этот метод выполняет считывание одного байта из файла. System.in представляет собой переопределенный объект подкласса InputStream, который позволяет считывать информацию с клавиатуры.

У класса InputStream еще также имеются и неабстрактные методы для считывания массива байтов или для пропускания ряда байтов. Эти методы вызывают абстрактный метод read, благодаря чему подклассам нужно переопределять только один метод. Читать

Запись текстовых входных данных Java

Запись текстовых входных данных JavaДля текстовых выходных данных лучше всего использовать класс PrintWriter. Этот класс имеет методы для вывода строк и чисел в текстовом формате. Доступен даже удобный конструктор для связывания PrintWriter с FileWriter. Операторы

и

являются полностью эквивалентными. Читать

Как бесплатно создать свой собственный сервер Lineage 2?

Как бесплатно создать свой собственный сервер Lineage 2?Многие… Да нет, почти каждый геймер в своей жизни хоть раз, да задумывался о создании собственного сервера для игры, на котором были бы идеальные правила и все играющие на нем были бы счастливы. Свой сервер, помимо непосредственного удовольствия от игры на нем, способен принести еще и немалый капитал. Конечно, для этого требуются рекламные и маркетинговые навыки, но это не делает создание собственного сервера невозможным. В этой статье будет рассказано, как можно бесплатно создать и настроить свой сервер для всемирно известной игры Lineage 2.

Что для этого понадобится:

Для создания своего сервера Lineage II потребуется MySQL сервер, Navicat, Java-машина и пакет сервера Lineage II. Не пугайтесь незнакомых слов и терминов — все это будет пошагово разъяснено ниже. Читать

Модификаторы static и final в языке Java

Модификаторы static и final в языке JavaМодификаторы final и static очень важны в ООП. Ведь с помощью модификатора final вы сможете создать константу, а с помощью модификатора static можно обращаться к членам класса без создания экземпляра класса.
Рассмотрим для примера класс MyMath, который будет содержать арифметические функции: Читать

Генерация случайных чисел Java

Генерация случайных чисел JavaОчень часто бывает нужно создать случайные данные, которые могут быть нам полезны как в работе алгоритмов, так и при их тестировании. Для этих целей в языке Java существует генератор случайных чисел Random. Данный класс имеет два конструктора: по умолчанию, который использует текущую дату для своей инициализации и конструктор, который принимает на вход некоторое число типа long.

Очевидно, если вы будете использовать второй конструктор с одинаковым значением параметра, то в результате у вас будут генерироваться одинаковые случайные значения, поэтому на практике в основном применяют первый. Рассмотрим методы классы Random: Читать

Использование загрузчиков классов в качестве прстранств имен Java

Использование загрузчиков классов в качестве прстранств имен JavaКаждый Java-программист знает, что для исключения вероятности возникновения конфликтов между именами применяются имена пакетов. Например, в стандартной библиотеке Java есть два класса с именем Date, но полностью их имена, конечно же, выглядят как java.util.Date и java.sql.Date.

Короткие имена существуют для удобства программиста и требуют включения соответствующих операторов import. В выполняющейся программе же все имена классов обязательно содержат имена своих пакетов.

Как ни странно, но в рамках одной и той же виртуальной машины могут существовать два разных класса, имеющих одинаковое имя класса и пакета. Дело в том, что класс определяется по его полному имени u загрузчику класса. Такая технология для каждой Web-страницы используются отдельные экземпляры загрузчика классов апплетов. Читать

Кодирование символов в файлах исходного кода Java

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

Предположим, что для создания исходных файлов Java-программы используется стандартная программа Notepad в китайской версии Windows. Полученный в результате этого исходный код не является переносимым(то есть независимым от платформы) из-за использования локальной кодировки символов(GB или BIG5, в зависимости от типа региональных настроек операционной системы).

Классы становятся переносимыми только после компиляции. В этом случае идентификаторы и текстовые сообщения представляются с помощью модифицированной кодировки UTF-8. Сказанное означает, что при компиляции и выполнении программы предполагается использование трех кодировок символов. Читать

Управление соединениями, командами и результирующими наборами Java

Управление соединениями, командами и результирующими наборами JavaКаждый объект Connection может создать один или несколько объектов Statement. Один и тот же объект Statement можно использовать для нескольких несвязанных между собой команд и запросов. Однако для такого объекта допускается наличие не более одного открытого результирующего набора.

Если требуется выполнить несколько команд с одновременным анализом предоставленных ими результатов, вам понадобится несколько объектов Statement.

Не следует, однако, забывать, что, по крайней мере одна широко используемая база данных(Microsoft SQL Server) взаимодействует с JDBC-драйвером, который допускает работу только с одним объектом Statement. Количество объектов Statement, одновременно поддерживаемых JDBC-драйвером, можно узнать, вызвав метод getMaxStatements() класса DatabaseMetaData. Читать