Сеттер и Getter, перемещать стоимость private String usuariofc Main1 в usuariofc FirstClass

    public class Main1 extends JFrame implements ActionListener {

    private JLabel usuario, contraseña, image;
    public JButton blogin;
    private JTextField jtusuario, jtcontra;
    private String susuariofc = "", scontra = "";

    public Main1() {
    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setTitle("Cajero Automatico");
    getContentPane().setBackground(new Color(35, 0, 146));
    setIconImage(new 
    ImageIcon(getClass().getResource("images/ico.jpg")).getImage());
    usuario = new JLabel("Usuario:");
    usuario.setForeground(new Color(255, 255, 255));
    usuario.setVisible(true);
    usuario.setBounds(40, 35, 100, 50);
    add(usuario);

    contraseña = new JLabel("Contraseña:");
    contraseña.setForeground(new Color(255, 255, 255));
    contraseña.setBounds(40, 105, 100, 50);
    add(contraseña);

    ImageIcon imagen = new 
    ImageIcon(getClass().getResource("images/LOGO.jpg"));
    image = new JLabel(imagen);
    image.setBounds(15, 275, 200, 78);
    add(image);

    blogin = new JButton("Login");
    blogin.setBounds(90, 230, 100, 30);
    blogin.setForeground(new Color(255, 255, 255));
    blogin.setBackground(new Color(16, 0, 135));
    blogin.addActionListener(this);
    add(blogin);

    jtusuario = new JTextField();
    jtusuario.setBounds(40, 80, 200, 33);
    add(jtusuario);

    jtcontra = new JTextField();
    jtcontra.setBounds(40, 150, 200, 33);
    add(jtcontra);

}



       //control para el login
       @Override
       public void actionPerformed(ActionEvent e) {

        if (e.getSource() == blogin) {

        susuariofc = jtusuario.getText();
        scontra = jtcontra.getText();

        if (susuariofc.equals("josmart96") && (scontra.equals("rojo2000"))) {
            FirstClass secondwindow = new FirstClass();
            secondwindow.setBounds(0, 0, 600, 360);
            secondwindow.setVisible(true);
            secondwindow.setResizable(false);
            secondwindow.setLocationRelativeTo(null);
            this.setVisible(false);
            } else {
            JOptionPane.showMessageDialog(null, "Usuario y/o Contraseña 
            incorrectas");

        }
    }
}

    public static void main(String[] args) {
    Main1 firstwindow = new Main1();
    firstwindow.setBounds(0, 0, 290, 400);
    firstwindow.setVisible(true);
    firstwindow.setResizable(false);
    firstwindow.setLocationRelativeTo(null);




}

    public void mensajero(String susuario){
    FirstClass FC=new FirstClass();
    FC.setSusuario(susuariofc);
    }

}

 public class FirstClass extends JFrame implements ActionListener {

 private JLabel labelusuario;
 private JButton butonfc1;
 private JButton butonfc2;
 private JButton butonfc3;
 private JButton butonfc4;
 public String susuariofc;
 private int balance;


    public FirstClass() {

    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setTitle("Cajero Automatico");
    setIconImage(new 
    ImageIcon(getClass().getResource("images/ico.jpg")).getImage());
    getContentPane().setBackground(new Color(35, 0, 146));

    labelusuario = new JLabel("Hola " + susuariofc + " seleccione una 
    opcion");
    labelusuario.setBounds(100, 10, 300, 50);
    labelusuario.setForeground(new Color(255, 255, 255));
    add(labelusuario);

    butonfc1 = new JButton("Consultar");
    butonfc1.setBounds(40, 100, 200, 50);
    butonfc1.setForeground(new Color(255, 255, 255));
    butonfc1.setBackground(new Color(16, 0, 135));
    butonfc1.addActionListener(this);
    add(butonfc1);

    butonfc2 = new JButton("Depositar");
    butonfc2.setBounds(350, 100, 200, 50);
    butonfc2.setForeground(new Color(255, 255, 255));
    butonfc2.setBackground(new Color(16, 0, 135));
    butonfc2.addActionListener(this);
    add(butonfc2);

    butonfc3 = new JButton("Retirar");
    butonfc3.setBounds(40, 200, 200, 50);
    butonfc3.setForeground(new Color(255, 255, 255));
    butonfc3.setBackground(new Color(16, 0, 135));
    butonfc3.addActionListener(this);
    add(butonfc3);

    butonfc4 = new JButton("Cerrar Seccion");
    butonfc4.setBounds(350, 200, 200, 50);
    butonfc4.setForeground(new Color(255, 255, 255));
    butonfc4.setBackground(new Color(16, 0, 135));
    butonfc4.addActionListener(this);
    add(butonfc4);

}



    @Override
    public void actionPerformed(ActionEvent a) {

}

    public void setSusuario(String susuariofc) {
    this.susuariofc = susuariofc;
}

    public String getSusuario() {
    return this.susuariofc;
}

}

Метод сеттер и getter, чтобы получать стоимость

0
задан 15.09.2019, 17:27
1 ответ

Soluci¦n, если не debés изменять структуру классов (или же, отказываясь от использования субклассов), он может быть используя getter и сеттера как ты хорошо это выдвинул начала, но меняя getSusuario() от Main1 до estÃ: костариканский , чтобы соглашаться с FirstClass, не создавая другого объекта Main1 (так как сначала ты создаешь один, когда инстанции firstwindow). Asà - quedar¦ - в:

class Main1 extends JFrame implements ActionListener {

    private JLabel usuario, contraseña;
            //image;
    public JButton blogin;
    private JTextField jtusuario, jtcontra;
    private static String susuariofc = "";//la declaré estática
    private String scontra = "";

    public Main1() {
    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setTitle("Cajero Automatico");
    getContentPane().setBackground(new Color(35, 0, 146));
//    setIconImage(new 
//    ImageIcon(getClass().getResource("images/ico.jpg")).getImage());
    usuario = new JLabel("Usuario:");
    usuario.setForeground(new Color(255, 255, 255));
    usuario.setVisible(true);
    usuario.setBounds(40, 35, 100, 50);
    add(usuario);

    contraseña = new JLabel("Contraseña:");
    contraseña.setForeground(new Color(255, 255, 255));
    contraseña.setBounds(40, 105, 100, 50);
    add(contraseña);

//    ImageIcon imagen = new 
//    ImageIcon(getClass().getResource("images/LOGO.jpg"));
//    image = new JLabel(imagen);
//    image.setBounds(15, 275, 200, 78);
//    add(image);

    blogin = new JButton("Login");
    blogin.setBounds(90, 230, 100, 30);
    blogin.setForeground(new Color(255, 255, 255));
    blogin.setBackground(new Color(16, 0, 135));
    blogin.addActionListener(this);
    add(blogin);

    jtusuario = new JTextField();
    jtusuario.setBounds(40, 80, 200, 33);
    add(jtusuario);

    jtcontra = new JTextField();
    jtcontra.setBounds(40, 150, 200, 33);
    add(jtcontra);
    }
    //control para el login
    @Override
    public void actionPerformed(ActionEvent e) {

        if (e.getSource() == blogin) {

            susuariofc = jtusuario.getText();
            scontra = jtcontra.getText();

            if (susuariofc.equals("josmart96") && (scontra.equals("rojo2000"))) {
                FirstClass secondwindow = new FirstClass();
                secondwindow.setBounds(0, 0, 600, 360);
                secondwindow.setVisible(true);
                secondwindow.setResizable(false);
                secondwindow.setLocationRelativeTo(null);
                this.setVisible(false);
                } 
                else {
                JOptionPane.showMessageDialog(null, "Usuario y/o Contraseña incorrectas");
            }
        }
    }
//    public void mensajero(String susuario){
//    FirstClass FC=new FirstClass();
//    FC.setSusuario(susuariofc);
//    }
    public static void main(String[] args) {
    Main1 firstwindow = new Main1();
    firstwindow.setBounds(0, 0, 290, 400);
    firstwindow.setVisible(true);
    firstwindow.setResizable(false);
    firstwindow.setLocationRelativeTo(null);
    }
    //lo declaré estático para acceder sin crear objeto adicional
    public static String getSusuariofc() {
        return susuariofc;
    }    
}
class FirstClass extends JFrame implements ActionListener {

private JLabel labelusuario;
private JButton butonfc1;
private JButton butonfc2;
private JButton butonfc3;
private JButton butonfc4;
private String susuariofc;
private int balance;


    public FirstClass() {

        setLayout(null);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setTitle("Cajero Automatico");
    //    setIconImage(new 
    //    ImageIcon(getClass().getResource("images/ico.jpg")).getImage());
        getContentPane().setBackground(new Color(35, 0, 146));

        setSusuario(Main1.getSusuariofc());//acá seteo susuariofc usando método estático para no crear otro objeto Main1

        labelusuario = new JLabel("Hola " + susuariofc + " seleccione una opcion");
        labelusuario.setBounds(100, 10, 300, 50);
        labelusuario.setForeground(new Color(255, 255, 255));
        add(labelusuario);

        butonfc1 = new JButton("Consultar");
        butonfc1.setBounds(40, 100, 200, 50);
        butonfc1.setForeground(new Color(255, 255, 255));
        butonfc1.setBackground(new Color(16, 0, 135));
        butonfc1.addActionListener(this);
        add(butonfc1);

        butonfc2 = new JButton("Depositar");
        butonfc2.setBounds(350, 100, 200, 50);
        butonfc2.setForeground(new Color(255, 255, 255));
        butonfc2.setBackground(new Color(16, 0, 135));
        butonfc2.addActionListener(this);
        add(butonfc2);

        butonfc3 = new JButton("Retirar");
        butonfc3.setBounds(40, 200, 200, 50);
        butonfc3.setForeground(new Color(255, 255, 255));
        butonfc3.setBackground(new Color(16, 0, 135));
        butonfc3.addActionListener(this);
        add(butonfc3);

        butonfc4 = new JButton("Cerrar Seccion");
        butonfc4.setBounds(350, 200, 200, 50);
        butonfc4.setForeground(new Color(255, 255, 255));
        butonfc4.setBackground(new Color(16, 0, 135));
        butonfc4.addActionListener(this);
        add(butonfc4);
    }

    @Override
    public void actionPerformed(ActionEvent a) {

    }

    public void setSusuario(String susuariofc) {
    this.susuariofc = susuariofc;
    }

    public String getSusuario() {
    return this.susuariofc;
    }
}

, И если также они не позволяют тебе менять это estÃ: костариканский другой вариант, который у тебя остается, состоит в том, чтобы перемещать его стоимость susuariofc от Main1 до FirstClass как parÃ: метр в Вашем строителе, но сначала обрати внимание, если он подает тебе первый soluci¦n

0
ответ дан 11.11.2019, 01:06
  • 1
    даже, если они частные? – Jose Omar Gomez 16.09.2019, 01:25
  • 2
    я понимаю то, что ты говоришь, но представь себе то, что я запрограммировал что-то для кого-то, другой программист должен создавать другой класс в другом различном окне представь себе, что он захотел использовать или изменить переменную, лишенную моего класса. не изменяя кода – Jose Omar Gomez 16.09.2019, 01:26
  • 3
    если añ ade субкласс изменяет код – Jose Omar Gomez 16.09.2019, 02:02
  • 4
    ах ok ok, я понимаю. Ahí я издаю ответ – Juan Rom 16.09.2019, 10:51
  • 5
    спасибо! это была большая помощь – Jose Omar Gomez 16.09.2019, 15:21