Семинар 1

Перед началом работы рекомендуется прочитать уроки 1 и 2 из Справочника по Яве.

Пример 1.1

Программа «Hello world»

package com.nsunc.wiki.nbazhenov; public class HelloWorld { public static void main (String[] args){ System.out.println("Hello, World!"); } }

Пример 1.2

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

package com.nsunc.wiki.nbazhenov; public class SimpleLight { boolean state; boolean getState(){ return state; } void on(){ state = true; } void off(){ state = false; } }

Задание 1.1.A

Создайте пакет com.nsunc.wiki.вашЛогин. В этом пакете создайте класс SimpleLight, приведенный выше, и новый класс TestClass. С помощью TestClass протестируйте работу методов класса SimpleLight. Убедитесь в том, что Java присваивает значение полю state по умолчанию.

Задание 1.1.B

Модифицируйте реализацию SimpleLight следующим образом:

Добавьте в класс SimpleLight новые целочисленные поля brightness (яркость) и step (шаг). Сделайте так, чтобы значение поля step было по умолчанию равным 100.

Измените код существующих методов так, чтобы при включении лампочки ее яркость принимала значение 1000, а при выключении - 0.

Напишите метод dim() (терять яркость), производящий следующие действия: если яркость лампочки больше значения step, то яркость уменьшается на step; в противном случае лампочка выключается и в консоли печатается соответствующее сообщение.

Напишите метод brighten() (делать ярче), производящий следующие действия: если яркость лампочки не превосходит значения (1000-step), то яркость увеличивается на step; в противном случае в консоли печатается сообщение об ошибке.

Протестируйте работу методов класса SimpleLight.

Замечание: Лампочка считается включенной если и только если ее яркость больше нуля.

Задание 1.1.С

Модифицируйте реализацию SimpleLight следующим образом:

Добавьте новое статическое целочисленное поле maxBrightness (максимальная яркость). Сделайте так, чтобы по умолчанию maxBrightness принимало значение 1000.

Измените код метода brighten(), заменив 1000 на maxBrightness.

Напишите 2 статических метода: getMaxBrightness() - возвращает значение maxBrightness; и setMaxBrighness(int a) - устанавливает значение maxBrightness.

Продемонстрируйте работу статических методов.