Главная страница
Навигация по странице:

  • Увеличить оклад

  • "Иван в инженеры

  • Увеличить оклад по рейтингу

  • jButtonChngRatingActionPerformed

  • Запустить проект

  • Иван в инженеры

  • "Увеличить оклад по рейтингу".

  • Самостоятельная работа Java 30. Методические указания студентам по выполнению самостоятельнойкурсовой работы


    Скачать 153.8 Kb.
    НазваниеМетодические указания студентам по выполнению самостоятельнойкурсовой работы
    Дата24.01.2022
    Размер153.8 Kb.
    Формат файлаdocx
    Имя файлаСамостоятельная работа Java 30.docx
    ТипМетодические указания
    #340005
    страница6 из 9
    1   2   3   4   5   6   7   8   9

    Реализация выполнения методов обработки данных Class1/ Class2


    Код, обеспечивающий выполнение функции-метода 1 обработки данных класса-родителя связываем с обработчиком события для кнопки "Увеличить оклад" ( JButtonIncSalary).

    private void jButtonIncSalaryActionPerformed(java.awt.event.ActionEvent evt) {

    setPerson();

    for (int i = 0; i < personList.size(); i++) {

    personList.get(i).incSalary();

    }

    getPerson();

    }

    Здесь выполняется следующее:

    • Выполняется метод setPerson для копирования в поля текущего объекта данных из текстовых полей формы.

    • В цикле для каждого элемента списка выполняем метод incSalary (Увеличить оклад)

    • Выполняется метод getPerson, чтобы показать измененный оклад

    Выполнение функции-метода 2 обработки данных класса-родителя связываем с обработчиком события для кнопки "Иван в инженеры" (JButtonPosition2Engieer)

    private void jButtonPosition2EngineerActionPerformed(java.awt.event.ActionEvent evt) {

    for (int i = 0; i < personList.size(); i++) {

    if (personList.get(i).name.toUpperCase().startsWith("ИВАН")) {

    personList.get(i).position2Engieer();

    }

    }

    getPerson();

    }

    Особенностью здесь является то, что вызов метода position2Engieer выполняется только тогда, когда фамилия работника начинается с сочетания букв «иван». Чтобы результат не зависел от регистра написания фамилии, преобразуем поле name к верхнему регистру.

    Функция-метод обработки данных объекта класса-потомка выполняется при помощи обработчика события для кнопки "Увеличить оклад по рейтингу" (JbuttonChngRating). В цикле для каждого элемента списка выполняем метод chngSalary (Изменить оклад работника в зависимости от его рейтинга)

    private void jButtonChngRatingActionPerformed(java.awt.event.ActionEvent evt) {

    setPerson();

    for (int i = 0; i < personList.size(); i++) {

    personList.get(i).chngSalary();

    }

    getPerson();

    }

    Тестирование приложения


    Приведем последовательность действий по тестированию спроектированного приложения.

    Чтобы запустить приложение, нажмите по проекту правой кнопкой мыши и выберите "Запустить проект " из контекстного меню или нажмите на кнопку

    Создаем и помещаем в список последовательно три экземпляра «Работник» (Class2), т.е . нажимаем на кнопку "Работник", после чего заполняем все поля на форме. Поля были заполнены так:

    1й работник

    • Фамилия - Иванов

    • Должность - Техник

    • Оклад- 10000

    • Рейтинг - 70

    2й работник

    • Фамилия - Петров

    • Должность - Техник

    • Оклад- 10000

    • Рейтинг – 80

    3й работник

    • Фамилия - Сидоров

    • Должность - Техник

    • Оклад- 10000

    • Рейтинг - 90

    Просмотреть все поля всех объектов можно пролистывая список при помощи счетчика jSpinnerCrn.

    Теперь протестируем методы спроектированного класса.

    Метод incSalary – нажимаем на кнопку " Увеличить оклад" - сразу после этого оклад у всех работников увеличится на15%, т.е. мы увидим что оклад после применения метода incSalary будет 11500.

    Метод position2Engieer– нажимаем на кнопку "Иван в инженеры". Метод position2Engieer будет выполнен для 1-го работника с фамилией Иванов. После выполнения position2Engieer в поле «Должность» будет записано «Инженер»

    Метод chngSalary – нажимаем на кнопку "Увеличить оклад по рейтингу". Метод chngSalary будет выполнен для всех объектов из списка. Оклад будет изменен в зависимости от поля «Рейтинг». В результате объекты в списке будут иметь следующий вид.

    1й работник

    • Фамилия - Иванов

    • Должность - Инженер

    • Оклад- 13800

    • Рейтинг - 70

    2й работник

    • Фамилия - Петров

    • Должность - Техник

    • Оклад- 16100

    • Рейтинг – 80

    3й работник

    • Фамилия - Сидоров

    • Должность - Техник

    • Оклад- 18400

    • Рейтинг - 90
    1   2   3   4   5   6   7   8   9


    написать администратору сайта