2013-04-15 2 views
1

im реализует класс, основанный на данном графическом интерфейсе, и я пытаюсь переопределить tostring(), чтобы отображать информацию о графическом интерфейсе, но я не могу заставить его работать правильно.переопределить tostring()

GUI код

private void updateDisplay() { 
    try { 
     if (game.isAccepted()) { 
      String str = "Selected Applicant:\n\n" 
        + currentApplicant.toString() + "\n\nwas "; 
      if (game.isBestApplicant()) { 
       str += "the BEST. You Win!"; 
      } else { 
       str += "not the best available. You Lose.\n\nBest applicant was: \n\n" 
         + game.getBestApplicant(); 
      } 
      display.setText(str); 
      showNewGameControls(); 
     } else { 
      display.setText("Current applicant is:\n\n" 
        + currentApplicant.toString() 
        + "\n\nDo you wish to accept or reject?"); 
      showCurrentGameControls(); 
     } 
    } catch (HiringException e) { 
     display.setText(e.getMessage()); 
    } catch (Exception e) { 
     display.setText("Unandled Exception: " + e.toString()); 
     throw new RuntimeException(e); 
    } 
} 

Для класса я реализую, я написал следующий метод

public String tostring(){ 
    return currentApplicant; 
} 
+0

И что не работает? Вы получаете какие-либо ошибки? – 2013-04-15 06:42:13

+2

Вместо этого попробуйте 'toString'. Капитализация важна. – adamdunson

+2

Java чувствителен к регистру: try 'toString()' – John3136

ответ

3

Вы должны использовать toString, не tostring, так как Java чувствителен к регистру. Таким образом:

public String toString() 

tostring технически не то же самое, что toString в Java. Будьте осторожны с орфографией. Если ваш редактор поддерживает его, используйте аннотации @Override. @Override аннотации защищают вас от невозможности переопределить правильный метод.

+0

Использование @Override также полезно для удобства чтения –

Смежные вопросы