Delphi | Сети | ПК | Маршрутизаторы | Моделирование | Протоколы | Экспертные системы | Удаленный доступ | Доменные имена
Аплеты | SQL | Надежность | Задачи | Информационные процессы | JAVA | Отказы изделия | Расчет надежности показателей | Инфсис

Классы-утилиты, программирование в Java

Наследование Не менее важной характеристикой объектно-ориентированного языка программирования является наследование. Суть наследования состоит в создании производного класса, который имеет возможности базового класса плюс свои собственные возможности. Говорят, что производный класс расширяет (extends) базовый класс. Любой производный класс может расширять только один базовый класс.

Получение случайных чисел

Получить случайное неотрицательное число, строго меньшее единицы, в виде типа double можно статическим методом random () ИЗ класса java.lang.Math.

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

Более серьезные действия со случайными числами можно организовать с помощью методов класса Random из пакета java.utii . В классе два конструктора:

Random (long seed) — создает генератор псевдослучайных чисел, использующий для начала работы число s eed; Random() —выбирает в качестве начального значения текущее время. ;

Создав генератор, можно получать случайные числа соответствующего типа методами nextBoolean(), nextDouble(), nextFloat()(, nextGau.ssian(), next into, nextLong(), nextint(int max) или записать сразу последовательность случайных чисел в заранее определенный массив байтов bytes методом nextBytes(byte[] bytes) . Обобщения теорем сложения и умножения Появление только одного из независимых событий Рассмотрим примеры совместного применения теорем сложения и умножения. Пусть два независимых события А1 и А2 имеют вероятности появления соответственно p1 и р2. Найдем вероятность появления только одного из этих событий. Для этого введем новые события: В1 и B2. Событие В1 состоит в том, что событие А1 наступило, а событие А2 не наступило; иными словами, В1 = A1 2. Аналогичным образом определяется и событие B2 = 1A2 (совместное ненаступление события A1 и наступление события А2).

Вещественные случайные числа равномерно располагаются в диапазоне от 0,0 включительно до 1,0 исключительно. Целые случайные числа равномерно распределяются по всему диапазону соответствующего типа за, одним исключением: если в аргументе указано целое число max , то диапазон случайных чисел будет от нуля включительно до max исключительно.

Обработка событий клавиатуры

Для того чтобы уметь обрабатывать события клавиатуры, апплет должен раскрывать интерфейс
" KeyListener (события keyTyped, keyReleased и keyPressed),
например

public class keyEvents extends Applet implements KeyListener

В функции init данного апплета нужно назначить слушателя для отслеживания событий клавиатуры. Обычно в роли слушателя выступает сам апплет:

public void init()
{
addKeyListener( this );
}
Мы рассматриваем апплет, который реагирует на следующие события: нажатие (Up) и отпускание (Down) клавиши на клавиатуре. Информация о том, какое событие произошло, записывается в следующие переменные:

String keyDownEvent;
String keyUpEvent;

а затем выводится в окно апплета функцией paint.
Любой апплет, который раскрывает какой-либо интерфейс, должен предоставлять код для всех методов этого интерфейса, даже если какой-либо метод и не используется (в этом случае метод просто будет иметь пустое тело), например

public void keyTyped ( KeyEvent e )
{
}

public void keyReleased ( KeyEvent e )
{
keyUpEvent="Отпущена кнопка "+
e.getKeyText(e.getKeyCode())+
", буква "+e.getKeyChar();
repaint();
}

public void keyPressed ( KeyEvent e )
{
keyDownEvent="Нажата кнопка "+
e.getKeyText(e.getKeyCode())+
", буква "+e.getKeyChar();
repaint();
}

public void paint(Graphics g)
{
if (keyDownEvent!=null)
{
g.drawString(KeyDownEvent, 5, 15);
keyDownEvent=null;
}
if (keyUpEvent!=null)
{
g.drawString(KeyUpEvent, 5, 45);
keyUpEvent=null;
}

 

Математический анализ, лекции по физике Компьютерные сети