PDA

Просмотр полной версии : Java. Разработка класса



frostmind
06.11.2013, 14:26
Добрый день, нужна помощь в написании задачи. Среда разработки NETBEANS. Сроки выполнения от 2 до 3,5 недель. Сразу пишу сумма оплаты 1500-2000 руб. Прилагаю текст задания/ Задачу нужно сделать в 4 вариантах консоль, Jframe, аплет, сервлет. Просьба начать с консольного варианта, с возможностью переделывания в случае без вас, в фрейм, аплет, сервлет.

. Разработать класс "вектор целых чисел" в соответствии со следующим заданием:
Состояние класса -
Вектор включает в себя элементы типа int и определяется размером (количество элементов в векторе) и значениями своих элементов, например: вектор из 6 элементов {12, 8, 5, -3, 11, 5}. Память под вектор выделяется статически, во время компиляции, и задается массивом фиксированного предельного значения (например, максимальный размер вектора 100 элементов).
Протокол класса -
Определяет возможности создания и инициализации экземпляров класса и правила использования их (методы класса).
Предусмотреть следующие возможности:
• пустой конструктор для инициализации экземпляров и массивов экземпляров класса по умолчанию;
• создание экземпляров класса с инициализацией единственным элементом вектора;
• создание экземпляров класса с инициализацией размером и массивом значений элементов вектора;
• ввод экземпляров класса из входного потока и вывод их значений в выходной поток
(с помощью перегруженных операторов >> и << );
• выполнение операции сложения двух векторов (с помощью перегруженного оператора сложения +; реализуется как покомпонентное сложение двух векторов);
• выделение части вектора указанной длины, начиная с элемента, заданного его порядковым номером в векторе;
• выполнение операции включения в вектор нового элемента (с помощью перегруженного оператора += );
• упорядочение вектора по возрастанию;
• нахождение максимального элемента в векторе.
2. Проектирование класса рекомендуется начать с представления состояния класса, учитывающего заданные операции, а затем реализации конструкторов и перегруженного оператора вывода. Для отладки и исчерпывающего тестирования других методов разработанного класса реализовать диалоговую программу, которая позволяет вводить параметры, отлаживаемых методов. Для обработки ошибочных ситуаций использовать механизм исключительных ситуаций.
3. Повторить разработку класса при условии, что память под вектор необходимой длины выделяется динамически, во время выполнения программы (с помощью оператора new; память задается указателем на int в состоянии класса).
Дополнить интерфейс класса следующими возможностями:
• создание экземпляра класса с его инициализацией другим экземпляром класса (копирующий конструктор);
• переопределение экземпляра класса (с помощью перегруженного оператора присваивания).
4. Написать прикладную программу, использующую разработанный класс.