Реализация собственных Input/Output Stream


В Java очень богатый набор классов по работе с потоками: InputStream, DataInputStream, ByteArrayOutputStream, PrintStream и т.д. Каждый из них полезен в той или иной ситуации. Поэтому важно уметь работать с ними.

Например, нужно в игре защитить графику. Можно считать весь файл в массив, провести над ним операции по раскодированию и потом из массива байт создать картинку. Такой способ не очень хорош из-за повышенного потребления памяти и лишних операций. А почему бы нам сразу не читать байты уже раскодированными? Вот тут нам и поможет возможность создания своего Input/OutputStream'а.

Начнём с OutputStream. Первым делом, нужно создать свой класс, наследуемый от OutputStream. На вход он будет принимать существующий OutputStream.
  1. public

Продолжить

Рейтинг:  9  (Против: 0 | За: 9)
Добавлено: 1.11.2014 от heavenzip

Комментарии (2)

Структура мидлета [Java 2 ME]


В статье мы подробно разберём один из вариантов построения структуры мидлета.
Для удобства я не стану приводить полный код (полные исходники вы можете скачать по ссылке ниже).


Представим себе следующую ситуацию

У нас есть 3 экрана:
1. Экран "Сплэш" (который будет отображаться первым)
2. Экран "Меню"
3. Экран "Игра"

Для примера я не буду писать игры и меню с анимацией, так что каждый из экранов будет выполнять следующие действия:
   Экран "Сплэш" - выводит на 10 секунд текст "SPLASH"
   Экран "Меню" - выводит на 10 секунд текст "MENU"
   Экран "Игра" - выводит текст "GAME"

Итак, имея уже эти сведения, для наших экранов можно подобрать общий абстрактный класс, и имя ему - "Screen"
Что
Продолжить

Рейтинг:  14  (Против: 0 | За: 14)
Добавлено: 17.08.2014 от Kalter

Комментарии (22)

Бэкап сообщений Вконтакте с использованием VK API и Java 8


За время использования vk.com накопилось немало диалогов, которые хотелось бы куда-то сохранить и изредка перечитывать. К тому же всегда интересно вспомнить с чего начиналась переписка с другом или подругой. Поэтому я решил написать для себя приложение, которое будет делать бэкап диалогов в html со всеми фотографиями, ссылками на видео и репостами.

Задачу можно разбить на два пункта:
1. Получение бэкапа диалогов.
2. Парсинг и вывод в нужный формат.
Цитата 16-фев-2017:
По многочисленным просьбам добавил скомпилированное приложение с текстовым файлом настроек.

Получение бэкапа диалогов
Вконтакте предоставляет свой API для работы приложений. Именно его мы и будем использовать
Продолжить

Рейтинг:  13  (Против: 0 | За: 13)
Добавлено: 23.06.2014 от aNNiMON

Комментарии (6)

Написание бота для Diamond Dash


Не так давно, просматривая ленту на Хабре, наткнулся на такую вот статью. Бегло просмотрев её, я решил сделать подобное на своём родном языке Java. Сейчас постараюсь в точности описать ход своих мыслей и идей. Приступим.
Первым делом нужно было узнать, умеет ли Java работать с мышкой? Интуиция выдала стопроцентный положительный результат, затем, через десять секунд был введён запрос в Google и получено подтверждение - в таких делах наш помощник это класс java.awt.Robot. Он умеет получать изображение с экрана, эмулировать нажатия клавиш и управлять мышью. То что нужно. Для начала решил освоить этот класс, для этого написал метод, который "набирал" переданный ему текст. Исходный код этого метода выглядит так:
  1. /**
  2.  * Автоматическое

Продолжить

Рейтинг:  5  (Против: 0 | За: 5)
Добавлено: 9.05.2014 от aNNiMON

Комментарии (0)

Таймер в Java ME


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

Первым делом необходимо создать экземпляр класса Timer:
  1. Timer timer = new Timer();
Далее создаем объект TimerTask и переопределяем его метод run(). Например так:
  1. TimerTask tTask = new TimerTask() {
  2.     public void run() {
  3.         display.vibrate(100); // вибрировать 100 миллисекунд
  4.     }
  5. };
Кстати, метод vibrate() объекта типа Display заставляет телефон вибрировать. В параметр нужно написать длительность
Продолжить

Рейтинг:  2  (Против: 0 | За: 2)
Добавлено: 9.05.2014 от aNNiMON

Комментарии (0)
Всего: 41
<< 1 ... 6 7 8 9 >>

Мы в соцсетях

tw tg yt gt