it-swarm.com.ru

java, получить набор методов

Этот вопрос задавался раньше, но даже после прочтения: 

Java "Get" и "Set" Методы

Java Get/Set метод возвращает ноль

И еще я до сих пор не понимаю, как решить мою проблему.

При обращении к переменным в классе с использованием методов get из другого класса я получаю значение null. 

Как получить правильные значения вместо нуля? 


Это класс, в котором я пытаюсь получить свои переменные ОТ (не все включено). 

public class RLS_character_panel extends javax.swing.JPanel implements ActionListener, ItemListener { 

    private String name1 = "hello"; 

    public String getName1() { 
        return name1; 
    } 

    public void setName1(String name1) { 
        this.name1 = name1; 
    } 

} 

Это класс, в котором я пытаюсь получить значения TO. Этот класс расширяет JFrame, так что я могу добавить JPanel, который отображает переменную. (JPanel - это еще один класс с именем: RLS_strid_panel, который добавляется в этот кадр). 

public class RLS_strid_Java extends JFrame { 

    RLS_character_panel test = new RLS_character_panel(); 

    String name1 = test.getName1(); 

    RLS_strid_panel p = new RLS_strid_panel(namn1); 

    // constructor
    public RLS_strid_Java(String titel) { 
        super(titel); 
        this.setSize(1000, 772); 
        this.setVisible(true); 
        this.setResizable(false); 
        this.add(p); 
    } 
}

jpanel отображает ноль.

1
Jonatan Jonsson

Чтобы понять, как получить и установить, все это связано с тем, как переменные передаются между различными классами. 

Метод get используется для получения или извлечения определенного значения переменной из класса. 

Заданное значение используется для хранения переменных.

Весь смысл get и set состоит в том, чтобы извлекать и сохранять значения данных соответственно.

В этом старом проекте у меня был класс User с методами get и set, которые я использовал в своем классе Server.

Методы get set класса User:

public int getuserID()
    {
        //getting the userID variable instance
        return userID;
    }
    public String getfirstName()
    {
        //getting the firstName variable instance
        return firstName;
    }
    public String getlastName()
    {
        //getting the lastName variable instance
        return lastName;
    }
    public int getage()
    {
        //getting the age variable instance
        return age;
    }

    public void setuserID(int userID)
    {
        //setting the userID variable value
        this.userID = userID;
    }
    public void setfirstName(String firstName)
    {
        //setting the firstName variable text
        this.firstName = firstName;
    }
    public void setlastName(String lastName)
    {
        //setting the lastName variable text
        this.lastName = lastName;
    }
    public void setage(int age)
    {
        //setting the age variable value
        this.age = age;
    }
}

Затем это было реализовано в методе run() в моем классе Server следующим образом:

//creates user object
                User use = new User(userID, firstName, lastName, age);
                //Mutator methods to set user objects
                use.setuserID(userID);
                use.setlastName(lastName);
                use.setfirstName(firstName);               
                use.setage(age); 
3
Osiris93

класс вашей панели не имеет конструктора, который принимает строку

попробуйте изменить

RLS_strid_panel p = new RLS_strid_panel(namn1);

в

RLS_strid_panel p = new RLS_strid_panel();
p.setName1(name1);
0
Komgcn