Использование объекта для отображения сохраненной информации в другом классе - PullRequest
0 голосов
/ 14 января 2020

Я создал экземпляр класса, чтобы информация, которую я буду вводить, сохранялась в нем. Но у меня возникли трудности с отображением информации, которая хранится. Когда я скомпилирую, он скажет, что я не инициализировал переменную.

    public class REPORTS
{
   public static void main(String[]args)
   {
      Scanner input = new Scanner(System.in);
        int x=choices();

         STUDENT stud;
         EQUIPMENT equip;
         RESERVATION reserve;
        switch(x)
        {
            case 1:
            { 
              // Code here for input

               stud = new STUDENT(Studid,Studname,Studcourse,Studlevel);

               break;
            }
            case 2:
            { 
               // Code also here for input
               equip = new EQUIPMENT(eqpmntid,qty,eqpmntname);
               break;
            }
            case 3:
            {
               // Same goes for here input
               reserve = new RESERVATION(studentid,equipid1,reservationdate,returndate);
               break;
            }
           case 4:
            {

               stud.display(); // error here variable might not have been initialized
               break;
            }      
           case 5:
            {

               equip.display(); // same goes here
               break;
            }
         case 6:
            {
               reserve.display(); // and also here
               break;           
            }
        }

Вот подробное сообщение об ошибке:

This is the error

1 Ответ

0 голосов
/ 14 января 2020

Кажется, вам нужно изменить поведение вашей программы; Существует один возможный синтаксический способ приведения нового Объекта к Студенту в начале вашего кода, но вы, вероятно, получите ошибку во время выполнения. Чтобы изменить поведение, вы можете инициализировать объекты с аргументами, которые являются нулевыми или пустыми или фиктивными объектами, на основе аргументов, которые получает ваш конструктор, а затем установить поля в соответствующие значения в связанном случае переключения; Например, ваши первые строки должны выглядеть так:

Student stud = new Student("", Null, dummyObject);
...