Java - Problemas con mis atributos privados

 
Vista:

Problemas con mis atributos privados

Publicado por Gorila (11 intervenciones) el 17/10/2021 16:35:53
Hola, Tengo problemas con el manejo de mis atributos privados, forzosamente tienen que ser privados, tengo mi clase carro que es como mi clase principal y también tengo mi clase llantas, en mi clase principal quiero tomar estos atributos y modificarlos con un setter ya que son privados, en el código que agrego intente modificarlos desde el programa pero no compila me marca los errores

The method setMarcaNeumatico(String) is undefined for the type Carro The method setRin(String) is undefined for the type Carro

pero lo que quería hacer que esta comentado en el código, ya que tampoco me funciono al momento de compilarlo, lo que quiero hacer es que el usuario ingrese una cadena y esa cadena con ayuda del método setter modifique al atributo privado de la clase llanta y al momento de imprimirlo con ayuda de System.out.println getter muestre el nuevo valor de ese atributo. Creo que esto se entiende mas si ven lo que esta comentado en la clase Carro que es como la principal.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//import java.util.Scanner;
 
public class Carro {
 
    public void mostrarAuto() {
 
        System.out.print("\nMarca de neumatico: " + getMarcaNeumatico() + "\nNumero de rin: " + getRin());
    }
 
    public static void main(String args[]) {
 
        /*
         * Scanner sc = new Scanner(System.in);
         *
         * String mn, ri;
         *
         * System.out.print("Marca del neumatico: "); mn = sc.nextLine();
         * System.out.print("Numero de rin: "); ri = sc.nextLine();
         *
         * Carro carro2 = new Carro();
         * carro2.setMarcaNeumatico(mn);
         * carro2.setRin(ri);
         *
         * carro2.mostrarAuto();
         *
         */
 
 
 
        Carro carro2 = new Carro();
 
        carro2.setMarcaNeumatico("michelin");
        carro2.setRin("R14");
 
        carro2.mostrarAuto();
 
    }
 
}

A continuación agrego la clase donde se encuentran los atributos privados

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
public class Llantas {
 
  private String marcaNeumatico;
  private String rin;
 
  public String getMarcaNeumatico() {
 
    return marcaNeumatico;
 
  }
 
  public void setMarcaNeumatico(String marcaNeumatico) {
 
    this.marcaNeumatico = marcaNeumatico;
 
  }
 
  public String getRin() {
 
    return rin;
 
  }
 
  public void setRin(String rin) {
 
    this.rin = rin;
 
  }
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Kabuto
Val: 3.428
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Problemas con mis atributos privados

Publicado por Kabuto (1381 intervenciones) el 17/10/2021 20:43:25
Los métodos setRin(), setMercaNeumaticio() y sus atributos..,. pertenecen a la clase Llantas.

Pero tu intentas llamarlos desde un objeto Carro

1
2
3
4
Carro carro2 = new Carro();
 
        carro2.setMarcaNeumatico("michelin");
        carro2.setRin("R14");

Carro, ahora mismo, no tiene ninguna relación con la clase Llantas. Puedes solucionarlo agregándole a Carro, un atributo que sea un objeto Llantas, que será quien te propocione accesos a esos métodos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Carro {
 
    public Llantas llantas = new Llantas();
 
    public void mostrarAuto() {
 
        System.out.print("\nMarca de neumatico: " + llantas.getMarcaNeumatico() + "\nNumero de rin: " + llantas.getRin());
    }
 
    public static void main(String args[]) {
 
         Carro carro2 = new Carro();
 
        carro2.llantas.setMarcaNeumatico("michelin");
        carro2.llantas.setRin("R14");
 
        carro2.mostrarAuto();
 
    }
 
}

Ahora tu Carro, ya sí tiene unas Llantas.
Antes no las tenía, por eso no podías acceder a sus métodos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problemas con mis atributos privados

Publicado por Gorila (11 intervenciones) el 17/10/2021 22:54:11
Muchas Gracias Kabuto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar