Задания для самостоятельной работы


Лабораторная работа № 1
Основные утилиты Java
Цели:
ознакомиться с основными утилитами Java;
научиться компилировать, выполнять программы, используя утилиты javac, java;
научиться создавать, модифицировать архивы Java, запускать программы из jar-файлов.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Задание 1.
По рекомендованной литературе ознакомиться с группами утилит, изучить технологию работы с основными утилитами java:
java;
javac;
jar;
appletviewer.
Задание 2.
Используя текстовый редактор, наберите текст программы «Hello world».
public class HelloWorld {
/**
* @author Author Name
* @version 1.0
*/
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
сохраните файл под именем HelloWorld.java;
откомпилируйте файл;
запустите файл на выполнение;
запишите в отчет команды и приведите скриншот выполнения.
Задание 3.
упакуйте *.class и *.java файлы программы HelloWorld в jar архив.
запустите программу из jar-архива;
запишите в отчет команды и приведите скриншот выполнения.
Задание 4.
используя текстовый редактор, наберите текст двух программ, выводящих соответственно «Hello from first», «Hello from second»;
откомпилируйте программы;
упакуйте *.class и *.java файлы программы в jar архив;
запустите сначала первую, а затем вторую программу из jar-архива;
запишите в отчет команды и приведите скриншот выполнения.
Задание 5.
создайте jar-архив из файлов примера учебника Oracle (zip-архив в приложении);
упакуйте все файлы в архив с сохранением структуры каталогов;
создайте web страницу в которой внедрен апплет TicTakToe;
запустите страницу в браузере, убедитесь в работоспособности апплета;
запишите в отчет команды и приведите скриншот выполнения.
If the TicTacToe demo were packaged in a JAR file named TicTacToe.jar, you could modify the APPLET tag with the simple addition of an ARCHIVE parameter:
<applet code=TicTacToe.class
archive="TicTacToe.jar"
width="120" height="120">
</applet>
The ARCHIVE parameter specifies the relative path to the JAR file that contains TicTacToe.class. This example assumes that the JAR file and the HTML file are in the same directory. If they're not, you would need to include the JAR file's relative path in the ARCHIVE parameter's value. For example, if the JAR file was one directory below the HTML file in a directory called applets, the APPLET tag would look like this:
<applet code=TicTacToe.class
archive="applets/TicTacToe.jar"
width="120" height="120">
</applet>
Список рекомендованной литературы
JDK Tools and Utilities: http://docs.oracle.com/javase/7/docs/technotes/tools/Lesson: Packaging Programs in JAR Files: http://docs.oracle.com/javase/tutorial/deployment/jar/index.htmlСоздание JAR-файла: http://khpi-iip.mipk.kharkiv.edu/library/extent/prog/jar/basics_build.html
Лабораторная работа № 2
Java Syntax
Цели:
закрепить знания синтаксиса основных конструкция языка java;
научиться разрабатывать, компилировать и запускать java программы в IDE.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Изучите технологию разработки java приложений по документации выбранной вами IDE.
1 Напишите программу, которая над двумя числами, заданными в шестнадцатеричной системе выполняет все арифметические операции, а также операции декремента/инкремента (в префиксной и постфиксной форме), ВСЕ побитовые операции.
Кроме того, рассмотрите пример приведения типов, рассмотренных на лекции.
Вывод должен быть оформлен в форме, показывающий логику работы операций.
Объясните работу побитовых операций.
2. Напишите программу, которая считывает с клавиатуры три целых числа и выводит на экран:
их среднее арифметическое;
максимальное из введенных чисел.
Подсказка: для считывания чисел можно использовать экземпляр класса java.util.Scanner:
import java.util.Scanner;//импорт класса
public class CalcAverage {
public static void main (String args[]) {

Scanner sc = new Scanner (System.in);
//некоторый код
int i1 = sc.nextInt();
//некоторый код
Напишите программу, которая генерирует массив из не менее, чем 100 чисел, заполненных случайными целыми числами на интервале [0;K]. Константа К задается в теле программы.
Подсчитайте количество простых чисел и чисел, кратных 3.
Отсортируйте массив.
Подсказка: Используйте метод random класса java.lang.Math.
Используйте класс Arrays.
Лабораторная работа № 3
ООП в Java
(Продолжительность 4 часа)
Цели:
закрепить знания основных конструкций ООП языка java;
научиться использовать базовые объектные технологии java.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Разработать класс, реализующий треугольник Паскаля.
Треугольник Паскаля – бесконечная таблица биномиальных коэффициентов, имеющая треугольную форму. В этом треугольнике на вершине и по бокам стоят единицы. Каждое число равно сумме двух расположенных над ним чисел (на рисунке выше слева и точно над числом).
4895857994650068008582232500
Класс «отдает» матрицу. Класс – неизменяемый (immutable – см. Д. Блох).
Разработать класс для решения квадратных уравнений. Вычисление дискриминанта должен осуществлять вложенный класс.
После компиляции объясните структуру class файлов. Проанализируйте использование вложенного класса.
Реализовать игру в кости. Играют N игроков (компьютер в списке последний). Подкидываются одновременно К кубиков. Выигрывает тот, у кого большая сумма очков. Кто выиграл, тот и кидает первым в следующем кону. Игра идет до 7 выигрышей. Начинаете игру Вы.

Лабораторная работа № 4
Интерфейсы
Цели:
закрепить знания проектирования и реализации интерфейсов java;
научиться использовать интерфейсы при разработке приложений на java.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Пример листинга 3.3 из [3].
Написать программу, реализующую следующую диаграмму классов:

Переопределяемые методы voice() выводят соответствующую строку на консоль.
Расширение задания 1.
Есть животные, которые издают звуки. Есть животные имеющие крылья. И, наконец, есть животные, имеющие шерсть. Разработать UML модель и закодировать структуру классов и интерфейсов.
Переработать задачу про игру в кости под использование интерфейсов

Лабораторная работа № 5
Работа со строками в JavaЦели:
закрепить знания в области обработки строк;
научиться применять методы класса String и других классов для обработки строк.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Разработать класс Person, в котором имеется функция, возвращающая Фамилию И.О. Функция должна учитывать возможность отсутствия значений в полях Имя и Отчество. Программу оптимизировать с т.з. быстродействия.
Реализуйте класс Shirt:

Метод toString() выводит объяснение и значение полей построчно.
Дан также строковый массив:
shirts[0] = "S001,Black Polo Shirt,Black,XL";
shirts[1] = "S002,Black Polo Shirt,Black,L";
shirts[2] = "S003,Blue Polo Shirt,Blue,XL";
shirts[3] = "S004,Blue Polo Shirt,Blue,M";
shirts[4] = "S005,Tan Polo Shirt,Tan,XL";
shirts[5] = "S006,Black T-Shirt,Black,XL";
shirts[6] = "S007,White T-Shirt,White,XL";
shirts[7] = "S008,White T-Shirt,White,L";
shirts[8] = "S009,Green T-Shirt,Green,S";
shirts[9] = "S010,Orange T-Shirt,Orange,S";
shirts[10] = "S011,Maroon Polo Shirt,Maroon,S";
Преобразуйте строковый массив в массив класса Shirt и выведите его на консоль.
Разработайте класс, который получает строковое представление телефонного номера в одном из двух возможных строковых форматов:
+<Код страны><Номер 10 цифр>, например “+79175655655” или “+104289652211”
или
8<Номер 10 цифр> для России, например “89175655655”
и преобразует полученную строку в формат:
+<Код страны><Три цифры>–<Три цифры>–<Четыре цифры>

Лабораторная работа № 6
Java Collection Framework
Цели:
закрепить знания в области обработки даты и времени;
научиться использовать технологии Java Collection Framework для работы с датой и временем.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Первая строка – первый вопрос к зачету, вторая – второй. Проведите частотный анализ слов и символов из первой строки. Определите символы, которые:
входят и в первую и во вторую строку,
входят в первую и не входят во вторую,
содержатся хотя бы в одной строке.
Сделайте те же задания, символы должны выводиться:
в обычном порядке;
в обратном порядке;
в порядке возрастания циклического сдвига влево на n разрядов хеш-функции символа.

Приложенные файлы

  • docx 7614308
    Размер файла: 64 kB Загрузок: 0

Добавить комментарий