2015-03-14 1 views
0

У меня есть абстрактные классы GUI-элементов с двумя (нестатическими) «методами получения»;Как получить методы геттера другого класса в основной метод

public boolean isHighlighted(){ 
    return highlighted; 
} 

public String getText(){ 
    return text; 
} 

Я пытаюсь преобразовать число, введенное с помощью StdDraw, в градусы Цельсия в основном методе. Вот метод:

public static void calculate(){ 
    String choice = (String)RadioButton.getText(); 

    if(RadioButton.isHighlighted() && choice.equals("Temperature(C toF)")){ 

    String text = Text.getText(); 
    double number = Double.parseDouble(text); 
    double result = number*1.8 + 32; 
    } 
    } 

RadioButton это класс, который рисует 3 круга и давайте пользователю выбрать преобразование они хотят.

Моя ошибка говорит мне, что:

Ошибка: Не удается сделать статическую ссылку на нестатической метод GetText() из GUIelements типа.

Я знаю, что это правильно, поскольку я не смог бы получить доступ к этому тексту (преобразованному в число), потому что getText() не статичен. Но у меня нет другого представления о том, как получить этот текст и впоследствии его преобразовать.

ответ

0

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

+0

Как получить доступ к экземпляру этого класса? Мой конструктор для RadioButton: 'public RadioButton (double xc, double yc, double radius, String txt, boolean hilite, GUIlist g)', но как мне просто получить доступ к 'txt'? – user180708

+0

Я думаю о доступе к нему, как 'String text = txt.Text.getText();' но тогда txt явно не определен в моем основном методе. – user180708

+0

Как только у вас есть экземпляр, вызов методов тривиален: 'RadioButton button = new RadioButton (...); String text = button.getText(); 'Имейте в виду, что' RadioButton' - это класс, а не экземпляр. Это разница между «Автомобилем» (класс) и моей конкретной машиной, припаркованной на моей дороге (экземпляр класса «Автомобиль»). – matt