мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Это старая версия документа!


Полезные ссылки

Семинар 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 следующим образом:

  1. Добавьте в класс SimpleLight новые целочисленные поля brightness (яркость) и step (шаг). Сделайте так, чтобы значение поля step было по умолчанию равным 100.
  2. Измените код существующих методов так, чтобы при включении лампочки ее яркость принимала значение 1000, а при выключении - 0.
  3. Напишите метод dim() (терять яркость), производящий следующие действия: если яркость лампочки больше значения step, то яркость уменьшается на step; в противном случае лампочка выключается и в консоли печатается соответствующее сообщение.
  4. Напишите метод brighten() (делать ярче), производящий следующие действия: если яркость лампочки не превосходит значения (1000-step), то яркость увеличивается на step; в противном случае в консоли печатается сообщение об ошибке.

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

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

Задание 1.1.С

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

  1. Добавьте новое статическое целочисленное поле maxBrightness (максимальная яркость). Сделайте так, чтобы по умолчанию maxBrightness принимало значение 1000.
  2. Измените код метода brighten(), заменив 1000 на maxBrightness.
  3. Напишите 2 статических метода: getMaxBrightness() - возвращает значение maxBrightness; и setMaxBrighness(int a) - устанавливает значение maxBrightness.

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

Семинар 2

Арифметические операторы

Основные арифметические операторы: сложение (+), вычитание (-), умножение (*), деление (/), остаток от деления нацело (%).

Можно использовать сокращенную форму записи операторов:

a += b; // a = a + b
a -= b; // a = a - b
a *= b; // a = a * b
a /= b; // a = a / b
a %= b; // a = a % b

Операторы инкремента и декремента

Оператор инкремента записывается в виде ++ и означает «увеличить на единицу». Оператор декремента записывается в виде -- и означает «уменьшить на единицу». Для каждого из операторов есть две версии: префиксная и постфиксная.

++a; // префиксная версия оператора инкремента
a++; // постфиксная версия оператора инкремента

В префиксном варианте сначала выполняется операция, а затем выдается значение. В постфиксном варианте сначала выдается значение, и лишь затем выполняется операция.

int a = 0;
System.out.println("1. a = " + ++a); // напечатается: 1. a = 1
System.out.println("2. a = " + a++); // напечатается: 2. a = 1

Операторы сравнения

Операторы сравнения: меньше (<), больше (>), меньше или равно (<=), больше или равно (>=), равно (==), не равно (!=). == и != применимы для всех примитивных типов данных, остальные не применимы к типу boolean.

Логические операторы

Основные логические операторы: && (конъюнкция, AND), || (дизъюнкция, OR), ! (отрицание, NOT). Логические операторы применимы только к значениям типа boolean.

Задание 2.1

С клавиатуры вводится четыре натуральных числа: d (номер дня), m (номер месяца), y (номер года) и n. Напечатайте в консоли дату, которая наступит через n дней после даты d.m.y.

Пример: Ввели следующие 4 числа: 2, 1, 2012, 58. Через 58 дней после 2 января 2012 года наступает 29 февраля 2012 года, поэтому в консоли должна быть напечатана следующая дата: 29.02.2012.

Замечание: Год с номером y является високосным, если либо y кратно 4, но не кратно 100; либо y кратно 400. Например, 2000 – високосный год, а 2100, 2200 и 2300 – не високосные годы.