Knigionline.co » Программное обеспечение » Java руководство для начинающих

Java руководство для начинающих - Шилдт Герберт (2012)

Java руководство для начинающих
  • Год:
    2012
  • Название:
    Java руководство для начинающих
  • Автор:
  • Жанр:
  • Оригинал:
    Английский
  • Язык:
    Русский
  • Издательство:
    Вильямс
  • Страниц:
    316
  • ISBN:
    978-5-8459-1770-6
  • Рейтинг:
    4.3 (4 голос)
  • Ваша оценка:
"Java: руководство для начинающих", автором которого является Герберт Шилдт, а также на его счету популярные по всему миру книги по языкам программирования, таким образом, чтобы у читателя получилось быстро освоить основные навыки программирования на Java. Полностью обновленное по версии Java Platform, Standard Edition 7, пятое издание этого учебного пособия начинается с обзора самых простейших основ, не исключая выполнение простых программ на Java и компилирование. Далее в нем описаны синтаксические конструкции и ключевые слова составляющие основу Java как языка программирования. Затем следует изложение наиболее передовых языковых средств Java, включая многопоточное и обобщенное программирование. Книга завершается введением в библиотеку Swing. Использованный в книге справочный и учебный материал позволяет читателю быстро и легко освоить основы программирования на Java. В целях упрощения процесса изучения Java, учебник построен следующим образом: - Базовые понятия и навыки. Все главы начинаются с перечня базовых понятий и навыков, которые будет необходимо усвоить читателю. - Обращение к знатоку. Во врезках под этим заголовком даны полезные рекомендации в форме вопрос-ответ. - Примеры для опробования. Это примеры небольших проектов, наглядно показывающие, как применять полученные навыки и знания на практике. - Упражнения для самопроверки. В конце каждой главы присутствуют контрольные вопросы и задания для проверки прочности изученного материала. - Подробные комментарии к примерам программ. Все примеры программ в этом учебном пособии снабжены подробными комментариями, которые описывают приемы программирования Java и демонстрируемые языковые средства.

Java руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги

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

одном потоке по каким-то причинам не выполняются, в действие вступают другие

потоки. В многоядерных системах два и больше потоков могут исполняться одновременно.

Для поддержки многопоточного программирования в Java предусмотрен класс

и интерфейс .

Для поддержки многопоточного программирования в Java предусмотрен класс

Thread и интерфейс Runnable.

В каких случаях следует отдать предпочтение расширению класса Thread над реализацией интерфейса Runnable?

Подклассы, производные от класса Thread, целесообразно создавать в тех случаях, когда, помимо метода run (), требуется переопределить другие методы данного

класса.

Покажите, как с помощью метода j о in () можно организовать ожидание завершения потокового объекта MyThrd.

MyThrd.join()

Покажите, как установить приоритет потока MyThrd на три уровня выше нормального приоритета.

MyThrd.setPriority(Thread.N0RM_PRI0RITY+3);

Что произойдет, если в объявлении метода указать ключевое слово synchronized?

Если указать ключевое слово synchronized в объявлении метода, то в каждый момент времени этот метод будет вызываться только в одном потоке для любого заданного объекта его класса.

Методы wait () и notify () служат для .

взаимодействия потоков

Внесите в класс TickTock изменения для организации настоящего отчета времени.

Первую половину секунды должен занимать вывод на экран слова "Tick", а вторую — вывод слова "Tock". Таким образом, сообщение "Tick-Tock" должно соответствовать одной секунде отсчитываемого времени. (Время переключения контекстов можно не учитывать.)

Для организации отчета времени достаточно ввести в классе TickTock вызовы метода sleep (), как показано ниже.

// Вариант класса TickTock, в который введены вызовы

// метода sleep() для организации отсчета времени.

class TickTock {

String state; // Состояние часов

synchronized void tick(boolean running) {

582 Javc,/: руководство для начинающих, 5-е издание

if(!running) { // остановить часы

state = "ticked";

notifyO; // уведомить ожидающие потоки

return;

}

System.out.print("Tick ");

// ожидать 1/2 секунды

try {

Thread.sleep(500);

} catch(InterruptedException exc) {

System.out.println("Thread interrupted.");

}

state = "ticked"; // установить текущее состояние после такта "тик"

notifyO; // разрешить выполнение метода tock()

try {

while(!state.equals("tocked"))

wait (); // ожидать завершения метода tock()

}

catch(InterruptedException exc) {

System.out.println("Thread interrupted.");

}

synchronized void tock(boolean running) {

if(!running) { // остановить часы

state = "tocked";

notifyO; // уведомить ожидающие потоки

return;

}

System.out.println("Tock");

// ожидать 1/2 секунды

try {

Thread.sleep(500);

} catch(InterruptedException exc) {

System.out.println("Thread interrupted.");

}

state = "tocked"; // установить текущее состояние после такта "так"

notifyO; // разрешить выполнение метода tick()

try {

while(!state.equals("ticked"))

wait (); // ожидать завершения метода tick()

}

catch(InterruptedException exc) {

System.out.println("Thread interrupted.");

}

Приложение А. Ответы на вопросы для самопроверки 583

}

}

Почему в новых программах на Java не следует применять методы suspend (),

resume() и stop()?

Методы suspend (), resume () и stop () не рекомендуется применять, поскольку

они могут стать причиной серьезных осложнений при выполнении программы.

Перейти
Наш сайт автоматически запоминает страницу, где вы остановились, вы можете продолжить чтение в любой момент
Оставить комментарий