Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - adrit

Páginas: [1] 2 3
1
Hola RaGa,

Tenes razon, no fue correcta mi sugerencia de no sobreescribir el metodo equals.

Gracias nuevamente.

Saludos

3
Perfecto!!

Muchas gracias por la devolucion.

4
Hola RaGa,

Gracias! y que buena observación, no me había dado cuenta de la doble comparación.
De hecho también podría no sobreescribir el método en las clases Circulo y Cuadrado.
Es decir, usar el método de la superclase directamente!

Esto es correcto?

5
De acuerdo Alex!

Gracias por la devolución.

Saludos!

6
Hola! Dejo mi código para el ejercicio CU00695B.

Citar
EJERCICIO

Declara una clase abstracta Legislador que herede de la clase Persona, con un atributo provinciaQueRepresenta (tipo String) y otros atributos. Declara un método abstracto getCamaraEnQueTrabaja. Crea dos clases concretas que hereden de Legislador: la clase Diputado y la clase Senador que sobreescriban los métodos abstractos necesarios. Crea una lista de legisladores y muestra por pantalla la cámara en que trabajan haciendo uso del polimorfismo.


Código: [Seleccionar]
public class Persona {
private String nombre; private String apellidos; private int edad;
public Persona() { nombre = ""; apellidos = ""; edad = 0; }
public Persona (String nombre, String apellidos, int edad) { this.nombre = nombre; this.apellidos = apellidos; this.edad = edad; }
public String getNombre() { return nombre;  }
public String getApellidos() { return apellidos;  }
public int getEdad() { return edad;  }
public String toString() {   Integer datoEdad = edad;
return "-Nombre: ".concat(nombre).concat(" -Apellidos: ").concat(apellidos).concat(" -Edad: ").concat(datoEdad.toString() ); } 
}

Código: [Seleccionar]
public abstract class Legislador extends Persona {
    private String provinciaQueRepresenta;
   
    public Legislador (String nombre, String apellidos, int edad, String provinciaQueRepresenta){
        super(nombre, apellidos, edad);
        this.provinciaQueRepresenta=provinciaQueRepresenta;
    }
   
    public String getProvinciaQueRepresenta() {return provinciaQueRepresenta;}
   
    public String toString () {
        return super.toString().concat("\nProvincia que representa: ").concat(provinciaQueRepresenta);
    }

    abstract public String getCamaraEnQueTrabaja();
}

Código: [Seleccionar]
public class Diputado extends Legislador{
    private String camaraEnQueTrabaja;
   
    public Diputado(String nombre, String apellidos, int edad, String provinciaQueRepresenta,
                        String camaraEnQueTrabaja){
        super(nombre, apellidos, edad, provinciaQueRepresenta);
        this.camaraEnQueTrabaja=camaraEnQueTrabaja;
    }

    public String getCamaraEnQueTrabaja() {
        return camaraEnQueTrabaja;
    }
   
    public String toString() {
        return super.toString().concat("\nCamara en que trabaja: ").concat(camaraEnQueTrabaja);
    }
}

Código: [Seleccionar]
public class Senador extends Legislador{
    private String camaraEnQueTrabaja;
   
    public Senador (String nombre, String apellidos, int edad, String provinciaQueRepresenta,
                        String camaraEnQueTrabaja){
        super(nombre, apellidos, edad, provinciaQueRepresenta);
        this.camaraEnQueTrabaja=camaraEnQueTrabaja;
    }

    public String getCamaraEnQueTrabaja() {
        return camaraEnQueTrabaja;
    }
   
    public String toString() {
        return super.toString().concat("\nCamara en que trabaja: ").concat(camaraEnQueTrabaja);
    }
}

Código: [Seleccionar]
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;

public class Listador {
    private List<Persona> lista;
    private Iterator<Persona> iterador;
   
    public Listador() {
        lista = new ArrayList<Persona>();
    }
    public void add (Persona persona) {
        lista.add(persona);
    }
    public void mostrarLista() {
        iterador = lista.iterator();
        String tmp = "";
        Persona tmpPersona;
        while(iterador.hasNext()){
            tmpPersona=iterador.next();
            if(tmpPersona instanceof Diputado){
                tmp = "Diputado";
            }else tmp = "Senador";
            System.out.println("Listando datos del "+tmp+" :\n"+tmpPersona.toString());
        }
    }   
}

Código: [Seleccionar]
public class Test {
    public static void main (String[] args) {
        Listador lista = new Listador();
        lista.add(new Diputado ("Jose", "Gomez" , 40, "Rio Negro", "Camara alta"));
        lista.add(new Diputado ("Alberto", "Perez", 39, "Neuquen", "Camara baja"));
        lista.add(new Diputado ("Enrique", "Lopez", 45, "Salta", "Camara alta"));
        lista.add(new Senador ("Alberto", "Esteves", 51, "Mendoza", "Camara alta"));
        lista.add(new Senador ("Roberto", "Gomez", 55, "Jujuy", "Camara baja"));
        lista.add(new Senador ("Ricardo", "Bargas", 52, "Santa Fe", "Camara baja"));
        lista.mostrarLista();
    }
}

Gracias!!

7
Hola!

Dejo mi resolución para el ejercicio numero CU00694B

Citar
EJERCICIO

Define una clase Figura de la que hereden otras dos clases denominadas Cuadrado y Círculo. La clase figura debe tener al menos el campo dimensionPrincipal. Las clases Cuadrado y Círculo deben tener al menos un método calcularArea que permita calcular el área a partir de la dimensión principal, utilizando la fórmula matemática correspondiente. Además, sobreescribe el método equals para que dos cuadrados sean iguales si tienen igual dimensión principal, y dos círculos idem. A continuación crea un programa test donde crees varios círculos y cuadrados y hagas comprobaciones de igualdad usando el método equals.

Código: [Seleccionar]
public class Figura {
    private double dimensionPrincipal;

    public Figura () {}

    public Figura (double dimensionPrincipal) {
        this.dimensionPrincipal=dimensionPrincipal;
    }

    public void setDimensionPrincipal (double dimensionPrincipal) {
        this.dimensionPrincipal=dimensionPrincipal;
    }

    public double getDimensionPrincipal() { return dimensionPrincipal; }
   
    public String toString() {
        return ((Double)getDimensionPrincipal()).toString();
    }

    public boolean equals(Object Obj) {
        if (Obj instanceof Figura) {
            Figura tmpFigura = (Figura)Obj;
            if (((Double)this.dimensionPrincipal).equals(tmpFigura.dimensionPrincipal)) {
                return true;
            } return false;
        } return false;
    }
}

Código: [Seleccionar]
public class Circulo extends Figura {
    private static final double PI = 3.1416;
    public Circulo (double diametro) {    super(diametro);  }

    public double calcularArea() {    return PI*Math.pow((getDimensionPrincipal()/2),2);   }
   
    public double getDiametro() {return getDimensionPrincipal();}
   
    public String toString() {
        return "Diametro en cm : ".concat(super.toString());
    }

    public boolean equals (Object Obj) {
        if(Obj instanceof Circulo) {
            Circulo tmpCirculo=(Circulo)Obj;
            if(super.equals(tmpCirculo) && ((Double)this.calcularArea()).equals(tmpCirculo.calcularArea())) {
                return true;
            } return false;
        } return false;
    }
}

Código: [Seleccionar]
public class Cuadrado extends Figura {
    public Cuadrado (double dimensionPrincipal) {    super(dimensionPrincipal);    }
    public double calcularArea() {    return Math.pow(getDimensionPrincipal(),2);   }
    public double getLado() { return getDimensionPrincipal();}
    public String toString() {
        return "Lado en cm : ".concat(super.toString());
    }
    public boolean equals (Object Obj) {
        if (Obj instanceof Cuadrado) {
            Cuadrado tmpCuadrado = (Cuadrado)Obj;
            if(super.equals(tmpCuadrado) && ((Double)this.calcularArea()).equals(tmpCuadrado.calcularArea())) {
                return true;
            } return false;
        } return false;
    }
}

Código: [Seleccionar]
import java.util.List;
import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        List<Figura> lista = new ArrayList<Figura>();
        Cuadrado cuadrado1 = new Cuadrado (10);
        Cuadrado cuadrado2 = new Cuadrado (12);
        Cuadrado cuadrado3 = new Cuadrado (10);
        Circulo circulo1 = new Circulo (10);
        Circulo circulo2 = new Circulo (10);
        Circulo circulo3 = new Circulo (12);
        lista.add(cuadrado1); lista.add(cuadrado2); lista.add(cuadrado3);
        lista.add(circulo1); lista.add(circulo2); lista.add(circulo3);
        System.out.println("Lista de figuras creadas:\n");
        int a = 1, b = 1;
        for(Figura tmp:lista){
            if(tmp instanceof Circulo){
                System.out.println("Circulo "+a+++" :");
                System.out.println(tmp.toString());
            } else {
                System.out.println("Cuadrado "+b+++" : ");
                System.out.println(tmp.toString());
            }
        }
        System.out.println("cuadrado 1 es igual a cuadrado 2? "+cuadrado1.equals(cuadrado2));
        System.out.println("cuadrado 1 es igual a cuadrado 3? "+cuadrado1.equals(cuadrado3));
        System.out.println("circulo 1 es igual a circulo 2? "+circulo1.equals(circulo2));
        System.out.println("circulo 1 es igual a circulo 3? "+circulo1.equals(circulo3));
    }
}

Gracias!!

8
Hola!!

Dejo mi resolución para el ejercicio CU00692B

Código: [Seleccionar]
public class Profesor {
    private String nombre;
    private int edad;
    private int aniosConsolidados;
    public Profesor() { nombre = ""; edad = 0; aniosConsolidados = 0; }
    public Profesor (String nombre, int edad, int aniosConsolidados) {
        this.nombre = nombre;
        this.edad = edad;
        this.aniosConsolidados = aniosConsolidados;
    }
    public void setNombre(String nombre) { this.nombre=nombre;  }
    public void setEdad(int edad) { this.edad=edad;  }
    public void setAniosConsolidados (int aniosConsolidados) { this.aniosConsolidados=aniosConsolidados;  }
    public String getNombre() { return nombre;  }
    public int getAniosConsolidados () { return aniosConsolidados;  }
    public int getEdad() { return edad;  }
    public double obtenerSalarioBase () { return 725+aniosConsolidados*33.25; }
    public void mostrarDatos() {
        System.out.print("\nNombre : "+getNombre()+"\nEdad : "+getEdad()+
        "\nAños consolidados : "+getAniosConsolidados());
    }
}

Código: [Seleccionar]
public class ProfesorEmerito extends Profesor{
    private int aniosEmerito;
   
    public ProfesorEmerito (String nombre, int edad, int aniosConsolidados, int aniosEmerito){
        super(nombre, edad, aniosConsolidados);
        this.aniosEmerito=aniosEmerito;
    }
    public void setAniosEmerito(int aniosEmerito){
        this.aniosEmerito=aniosEmerito;
    }
    public int getAniosEmerito() { return aniosEmerito; }
    public double obtenerSalarioBase () {
        return super.obtenerSalarioBase()+47.80 * aniosEmerito;
    }     
}

Código: [Seleccionar]
public class Test {

    public static void main (String[] args) {
    ProfesorEmerito emerito1 = new ProfesorEmerito("Roberto Perez", 35, 20, 5);
    emerito1.mostrarDatos();
    System.out.println("\nSalario Base :"+emerito1.obtenerSalarioBase ());
    }
}

Gracias!!!


9
Hola RaGa,

Gracias por la devolución. Hice nuevas modificaciones siguiendo las instrucciones dadas.

Saludos!

10
Hola RaGa,

Hice modificaciones para corregir los problemas mencionados.

Gracias!

11
Hola Lorenzo31!

Primero, como sana y buena costumbre deseo agradecerte analisis, devolución y el tiempo dedicado para eso.
Lo resalto porque es una señal de respeto y agradecimiento de parte de los foreros mas novatos. Sin vuestra presencia y buena predisposición no sería posible avanzar solo leyendo el curso.

Vamos a la pregunta b).
Es un excelente debate  :)
Leí tu ejercicio y me gustaría analizar un poco:

Código 1:
Código: [Seleccionar]
public class test {

    public static void main (String[] Args){

        Vehiculo v1 = new Vehiculo();
        Taxi t1 = new Taxi();
        v1 = t1;
        t1 = (Taxi)v1;
        System.out.println("Ejecuta");
    }
}


El código 1 me llevó a la duda de contestar que sí. pero luego lo modifiqué  (Código 2) y si bien compiló correctamente, dio un error en tiempo de ejecución.

Código 2:
Código: [Seleccionar]
public class test {

    public static void main (String[] Args){

        Vehiculo v1 = new Vehiculo();
        Taxi t1 = new Taxi();
        //v1 = t1;
        t1 = (Taxi)v1;
        System.out.println("Ejecuta");
    }
}

Mis conclusiones fueron:

Si v1 (de tipo de vehiculo) apunta a un objeto tipo taxi, solo vamos a poder usar los métodos correspondientes al tipo vehículo, pero esto no quiere decir que estamos cortando el objeto tipo taxi, solo no podemos acceder a todos los métodos de este. En realidad si podríamos si hacemos t1.nombreDeMetodo(). Si t1 fuese anónimo "Vehiculo v1 = new Taxi();" entonces no podríamos acceder a todos los métodos del tipo Taxi, solo a los del tipo Vehiculo.

Dicho esto,

¿Un objeto de tipo estático declarado Vehiculo puede contener a un objeto Taxi en tiempo de ejecución?

A mi criterio si tomamos en cuenta código 1, la respuesta será si.
Pero, a mi manera de verlo, hay una trampa. v1 está apuntando a un objeto tipo taxi, por lo tanto "t1 = (Taxi)v1" estamos re apuntando t1 a un objeto ya era de tipo taxi, por lo tanto el casting funciona correctamente.

Ahora si tomamos en cuenta el código 2, "t1 = (Taxi)v1" donde v1 referencia a un objeto de tipo vehiculo, entonces t1 (aplicando enmascaramiento de tipos o casting) estaría referenciando a un objeto con menos metodos que los tiene un tipo taxi.
Al intentar ejecutar este código me dio un error en tiempo de ejecución y por eso mi respuesta fue que no se puede.


12
Hola,

Dejo mi resolucion para el ejercicio CU00690B

Citar
Responde a las siguientes preguntas:

Supongamos la superclase Vehiculo que representa a cualquier tipo de vehículo y la subclase Taxi que representa a un tipo de vehículo concreto.

a) ¿Un objeto de tipo estático declarado Taxi puede contener a un objeto Vehiculo en tiempo de ejecución?

b) ¿Un objeto de tipo estático declarado Vehiculo puede contener a un objeto Taxi en tiempo de ejecución?

c) Escribe el código de una clase Vehiculo con los atributos matricula (String) y numeroDeRuedas (int), constructor, métodos getters y setters y método toString() para mostrar la información de un vehículo.

d) Escribe el código de una clase Taxi que herede de vehículo y que además de los atributos de Vehiculo lleve un atributo adicional nombreDelConductor (String) y numeroDePlazas (int), constructor, métodos getters y setters y método toString() para mostrar la información de un Taxi.

e) Escribe el código de una clase test con el método main que cree un objeto cuyo tipo es Vehiculo, instanciado como Taxi. Establece valores para sus atributos y usa el método toString(). ¿Qué método toString() resulta de aplicación, el propio de la clase Vehiculo o el propio de la clase Taxi? ¿Por qué?

a) No, porque el objeto de tipo estático declarado Taxi posee mas atributos y métodos que el de tipo Vehiculo.

b) Si, es posible.

c)
Código: [Seleccionar]
public class Vehiculo {
   
    private String matricula;
    private int numeroDeRuedas;
   
    public Vehiculo(String matricula, int numeroDeRuedas) {
       this.matricula=matricula;
       this.numeroDeRuedas=numeroDeRuedas;
    }
    public void setMatricula(String matricula) {
        this.matricula=matricula;
    }   
    public void setNumeroDeRuedas(int numeroDeRuedas) {
        this.numeroDeRuedas=numeroDeRuedas;
    }   
    public String getMatricula() { return matricula; }
    public int getNumeroDeRuedas() { return numeroDeRuedas; }
    public String toString() {
        return "Matricula : "+matricula+"\nNumero de Ruedas : "+numeroDeRuedas;
    }   
}

d)
Código: [Seleccionar]
public class Taxi extends Vehiculo {
    private String nombreDelConductor;
    private int numeroDePlazas;
   
    public Taxi(String matricula, int numeroDeRuedas, String nombreDelConductor, int numeroDePlazas) {
        super(matricula, numeroDeRuedas);
        this.nombreDelConductor = nombreDelConductor;
        this.numeroDePlazas = numeroDePlazas;
    }
    public void setNombreDelConductor (String nombreDelConductor) {
        this.nombreDelConductor = nombreDelConductor;
    }
    public void setNumeroDePlazas (int numeroDePlazas) {
        this.numeroDePlazas = numeroDePlazas;
    }
    public String getNombreDelConductor() { return nombreDelConductor; }
    public int getNumeroDePlazas() { return numeroDePlazas; }
    public String toString() {
        //System.out.println(super.toString());
        return super.toString()+"\nNombre del conductor : "+nombreDelConductor+"\nNumero de plazas : "+numeroDePlazas;
    }
}

e)
Código: [Seleccionar]
public class Test {
    public static void main (String[] args) {
        Vehiculo vehiculo1 = new Taxi("taxi1", 4, "Luis Miguel", 3);
        System.out.println(vehiculo1.toString());
    }
}

Se aplica el método toString() de la clase Taxi ya que estamos sobreescribiendo dicho método y java es capaz de distinguir cual método sobreescrito debe usar en tiempo de ejecución.

Gracias!



13
¿Hola cómo estan?

Dejo mi código para el ejercicio CU00688B (descargar archivo adjunto estando logeados en el foro).

Citar
EJERCICIO

Amplía el código del programa Java que planteamos como ejercicio en la entrega CU00687 de este curso, relativo a la gestión de una empresa agroalimentaria, teniendo en cuenta que la empresa gestiona envíos a través de diferentes medios, y un envío puede contener cierto número de productos frescos, refrigerados o congelados. Añade al código:

a) Una clase EnvioDeProductos que represente un envío de productos como colección de objetos que admite el polimorfismo.

b) Crear una clase testHerencia4 con el método main donde se creen: dos productos frescos, tres productos refrigerados y cinco productos congelados (2 de ellos congelados por agua, otros 2 por aire y 1 por nitrógeno). Crear un envío que represente la agrupación de los anteriores productos. Mostrar por pantalla la información del número de productos que componen el envío y recorrer los productos del envío usando iterator para mostrar la información (valor de los atributos) de cada uno de ellos.

Gracias, un abrazo a todos!

Adrian

14
Hola Mario,

Quiero comentar que las distintas listas las he realizado porque no encontré manera de distinguir los tipos si los mezclaba en una misma lista.
Mi idea era especificar cada tipo al momento de listarlos.
No quise usar la función instanceof para hacer caso a la recomendación que me has dado en cuanto a no adelantarme a los capítulos siguientes.

Gracias por dedicar valioso tiempo para responder cada una de mis consultas.

Saludos!

15
Hola Mario,

Pongo el codigo de la clase TestHerencia3 solamente.
El resto está igual solo saqué las lineas de ArrayList,

Código: [Seleccionar]
import java.util.Calendar;
import java.util.Scanner;
import java.util.List;
import java.util.ArrayList;

public class TestHerencia3 {
    public static List<Producto> listaProductoFresco = new ArrayList<Producto>();
    public static List<Producto> listaProductoRefrigerado = new ArrayList<Producto>();
    public static List<Producto> listaProdCongPorAire = new ArrayList<Producto>();
    public static List<Producto> listaProdCongPorAgua = new ArrayList<Producto>();
    public static List<Producto> listaProdCongPorNitrogeno = new ArrayList<Producto>();
    public static void main (String[] args) {
        Calendar fechaEnvase = Calendar.getInstance();
        Calendar fechaCaducidad = Calendar.getInstance();
        fechaEnvase.set(2015,9,22);
        fechaCaducidad.set(2016,9,22);
        listaProductoFresco.add(new ProductoFresco (42, fechaCaducidad,
                fechaEnvase, "Argentina"));
        listaProductoFresco.add(new ProductoFresco (43, fechaCaducidad,
                fechaEnvase, "Argentina"));
        listaProductoRefrigerado.add(new ProductoRefrigerado  (44, fechaCaducidad,
                fechaEnvase, "Argentina", "4258CA"));
        listaProductoRefrigerado.add(new ProductoRefrigerado  (45, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258CB"));
        listaProductoRefrigerado.add(new ProductoRefrigerado  (46, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258KJ"));       
        listaProdCongPorAire.add(new ProdCongPorAire (47, fechaCaducidad,
                fechaEnvase, "Argentina", "-5Cº", 25,25,10,40));
        listaProdCongPorAire.add(new ProdCongPorAire (48, fechaCaducidad,
                fechaEnvase, "Argentina", "-3Cº", 27,23,12,38));
        listaProdCongPorAgua.add(new ProdCongPorAgua (49, fechaCaducidad,
                            fechaEnvase, "Chile", "5cº", 4));
        listaProdCongPorAgua.add(new ProdCongPorAgua (50, fechaCaducidad,
                            fechaEnvase, "Perú", "4cº", 3));
        listaProdCongPorNitrogeno.add(new ProdCongPorNitrogeno(51, fechaCaducidad,
                                    fechaEnvase, "Bolivia", "3.4Cº", "Criogenico",20));
        mostrarProductos();
    }
    public static void mostrarProductos() {
        System.out.println("Productos Frescos:");
        for(Producto tmp:listaProductoFresco){
            tmp.mostrarProducto();
        }
        pause();
        System.out.println("\nProductos Refrigerados:");
        for(Producto tmp:listaProductoRefrigerado){
            tmp.mostrarProducto();
        }
        pause();
        System.out.println("\nProductos Congelado por Aire:");
        for(Producto tmp:listaProdCongPorAire){
            tmp.mostrarProducto();
        }
        pause();
        System.out.println("\nProductos Congelado por Agua:");
        for(Producto tmp:listaProdCongPorAgua){
            tmp.mostrarProducto();
        }
        pause();
        System.out.println("\nProductos Congelado por Nitrogeno:");
        for(Producto tmp:listaProdCongPorNitrogeno){
            tmp.mostrarProducto();
        }
    }   
    public static void pause(){
        Scanner sc = new Scanner(System.in);
        System.out.println("\nPresione una tecla para continuar..");
        sc.nextLine();
    }
}

Antes de finalizar tengo una consulta:

Pensé que un campo de clase era útil en estos casos para usarlo de la manera que lo hice en la segunda versión del código.
Ahora sabemos que eso es un error y me gustaría saber que uso se le puede dar a  un campo estático o de clase?

Gracias,

Saludos!



16
Hola Mario,

Estaba muy orgulloso de mi código  ;). Luego de ver que todo lo que escribí funcionaba (o mejor dicho, hacía algo sin dar error) me había puesto muy contento.

Hablando un poco mas en serio. Creo que es la primera vez que recibo tu devolución, por esto, ademas de decirte que es todo un placer, también deseo agradecerte el análisis y devolución.

Modifiqué el código tomando nota de tus palabras, estuve unas cuantas horas probando cosas y ha sido mas que productivo.
Tal vez el nuevo código todavía no esté a la altura de las circunstancias, pero creo que lo mejoré bastante y lo mas importante es que aprendí muchísimo haciendolo.

Nuevo esquema de clases:



y el codigo:

Código: [Seleccionar]
import java.util.Calendar;

public class Producto {
    private int numeroLote;
    private Calendar fechaCaducidad;

    public Producto(int numeroLote, Calendar fechaCaducidad) {
        this.numeroLote = numeroLote;
        this.fechaCaducidad = fechaCaducidad;
    }

    public void setNumeroLote(int numeroLote) {
        this.numeroLote = numeroLote;
    }

    public void setFechaCaducidad(int anio, int mes, int dia) {
        fechaCaducidad.set(anio, mes, dia);
    }
   
    public int getNumeroLote() { return numeroLote; }
   
    public Calendar getFechaCaducidad() { return fechaCaducidad; }
   
    public void mostrarProducto() {
        System.out.print("\nNumero de Lote :\t\t"+numeroLote+ "\nFecha de Caducidad :\t\t"
        +fechaCaducidad.getTime().toString());
    }
}


Código: [Seleccionar]
import java.util.Calendar;

public class ProductoRefrigeradoOCongelado extends Producto {
    private Calendar fechaEnvase;
    private String paisOrigen;
   
    public ProductoRefrigeradoOCongelado (int numeroLote, Calendar fechaCaducidad,
                                           Calendar fechaEnvase, String paisOrigen) {
        super(numeroLote, fechaCaducidad);
        this.fechaEnvase = fechaEnvase;
        this.paisOrigen = paisOrigen;
    }

    public void setFechaEnvase (Calendar fechaEnvase) {
        this.fechaEnvase = fechaEnvase;
    }

    public void setPaisOrigen (String paisOrigen) {
        this.paisOrigen = paisOrigen;
    }

    public Calendar getFechaEnvase () { return fechaEnvase; }

    public String getPaisOrigen () { return paisOrigen; }

    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.print("\nFecha de Envase :\t\t"+fechaEnvase.getTime()
                          .toString()+"\nPais de Origen :\t\t"+paisOrigen);
    }

}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;
import java.util.Iterator;

public class ProductoRefrigerado extends ProductoRefrigeradoOCongelado {
    private String codSupervision;
    private static ArrayList<ProductoRefrigerado> lista = new ArrayList<ProductoRefrigerado>();

    public ProductoRefrigerado  (int numeroLote, Calendar fechaCaducidad,
                                  Calendar fechaEnvase, String paisOrigen,
                                  String codSupervision)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen);
        this.codSupervision = codSupervision;
        lista.add(this);
    }

    public void setCodSupervision(String codSupervision) {
        this.codSupervision = codSupervision;
    }

    public String getCodSupervision() { return codSupervision; }

    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.println("\nCodigo Supervision Alimentaria:\t"+codSupervision);
    }   
   
    public static void mostrarTodosLosProductos() {
        int i = 1;
        Iterator<ProductoRefrigerado> iterador = lista.iterator();
        while (iterador.hasNext()) {
            System.out.println("\nProducto refrigerado "+i++);
            iterador.next().mostrarProducto();
        }
    }
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;

public class ProductoCongelado extends ProductoRefrigeradoOCongelado {
   
    private String tempMantenimiento;
   
    public ProductoCongelado  (int numeroLote, Calendar fechaCaducidad,
                                Calendar fechaEnvase, String paisOrigen,
                                String tempMantenimiento)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen);
        this.tempMantenimiento = tempMantenimiento;
    }

    public void setTempMantenimiento(String tempCongelacionRecomendada) {
       this.tempMantenimiento = tempMantenimiento;
    }
   
    public String getTempMantenimiento() { return tempMantenimiento; }
   
    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.print("\nTemperatura de mantenimiento:\t"+getTempMantenimiento());
    }
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;
import java.util.Iterator;

public class ProductoFresco extends Producto {
    private Calendar fechaEnvase;
    private String paisOrigen;
    private static ArrayList<ProductoFresco> lista = new ArrayList<ProductoFresco>();
   
   
    public ProductoFresco (int numeroLote, Calendar fechaCaducidad,
                            Calendar fechaEnvase, String paisOrigen) {
        super(numeroLote, fechaCaducidad);
        this.fechaEnvase = fechaEnvase;
        this.paisOrigen = paisOrigen;
        lista.add(this);
    }

    public void setFechaEnvase (Calendar fechaEnvase) {
        this.fechaEnvase = fechaEnvase;
    }

    public void setPaisOrigen (String paisOrigen) {
        this.paisOrigen = paisOrigen;
    }

    public Calendar getFechaEnvase () { return fechaEnvase; }

    public String getPaisOrigen () { return paisOrigen; }

    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.println("\nFecha de Envase :\t\t"+fechaEnvase.getTime()
                              .toString()+"\nPais de Origen :\t\t"+paisOrigen);
    }
   
    public static void mostrarTodosLosProductos() {
        int i = 1;
        Iterator<ProductoFresco> iterador = lista.iterator();
        while (iterador.hasNext()) {
            System.out.println("\nProducto fresco "+i++);
            iterador.next().mostrarProducto();
        }
    }
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;
import java.util.Iterator;

public class ProdCongPorAire extends ProductoCongelado {

    private double porcentajeNitrogeno, porcentajeOxigeno, porcentajeDioxidoCarbono, porcentajeVaporAgua;
    private static ArrayList<ProdCongPorAire> lista = new ArrayList<ProdCongPorAire>();

    public ProdCongPorAire  (int numeroLote, Calendar fechaCaducidad,
                              Calendar fechaEnvase, String paisOrigen,
                              String tempMantenimiento, double porcentajeNitrogeno,
                              double porcentajeOxigeno, double porcentajeDioxidoCarbono,
                              double porcentajeVaporAgua)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.porcentajeNitrogeno = porcentajeNitrogeno;
        this.porcentajeOxigeno = porcentajeOxigeno;
        this.porcentajeDioxidoCarbono = porcentajeDioxidoCarbono;
        this.porcentajeVaporAgua = porcentajeVaporAgua;
        lista.add(this);
    }

    public void getComposicion() {
        System.out.println("Composición aire al congelar:\nPorcentaje Nitrogeno:\t\t"+porcentajeNitrogeno+"\nPorcentaje Oxigeno:\t\t"
        +porcentajeOxigeno+"\nPorcentaje Dioxido de Carbono:\t" +porcentajeDioxidoCarbono+"\nPorcentaje vapor de agua:\t"+porcentajeVaporAgua);
    }

    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.println("\nPorcentaje de Nitrogeno :\t"+porcentajeNitrogeno+"\nPorcentaje de Oxigeno :\t\t"+porcentajeOxigeno
        +"\nPorcentaje de Dioxido de Carbono : "+porcentajeDioxidoCarbono+"\nPorcentaje de Vapor de Agua :\t"
        +porcentajeVaporAgua);
    }
   
    public static void mostrarTodosLosProductos() {
        int i = 1;
        Iterator<ProdCongPorAire> iterador = lista.iterator();
        while (iterador.hasNext()) {
            System.out.println("\nProducto congelado por aire "+i++);
            iterador.next().mostrarProducto();
        }
    }
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;
import java.util.Iterator;

public class ProdCongPorAgua extends ProductoCongelado {
   
    private double salinidadAgua;
    private static ArrayList<ProdCongPorAgua> lista = new ArrayList<ProdCongPorAgua>();
   
    public ProdCongPorAgua (int numeroLote, Calendar fechaCaducidad,
                            Calendar fechaEnvase, String paisOrigen,
                            String tempMantenimiento, double salinidadAgua)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.salinidadAgua = salinidadAgua;
        lista.add(this);
    }

    public void setSalinidad (double salinidadAgua) {
        this.salinidadAgua = salinidadAgua;
    }
   
    public double getSalinidad () { return salinidadAgua; }
   
    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.println("\nSalinidad del agua:\t\t"+salinidadAgua);
    }
   
        public static void mostrarTodosLosProductos() {
        int i = 1;
        Iterator<ProdCongPorAgua> iterador = lista.iterator();
        while (iterador.hasNext()) {
            System.out.println("\nProducto congelado por agua "+i++);
            iterador.next().mostrarProducto();
        }
    } 
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.ArrayList;
import java.util.Iterator;

public class ProdCongPorNitrogeno extends ProductoCongelado {
   
    private String metodoCongelacion;
    private int tiempoExposicion;
    private static ArrayList<ProdCongPorNitrogeno> lista = new ArrayList<ProdCongPorNitrogeno>();
   
    public ProdCongPorNitrogeno   (int numeroLote, Calendar fechaCaducidad,
                                    Calendar fechaEnvase, String paisOrigen,
                                    String tempMantenimiento, String metodoCongelacion,
                                    int tiempoExposicion)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.metodoCongelacion = metodoCongelacion;
        this.tiempoExposicion = tiempoExposicion;
        lista.add(this);
    }

    public void setMetodoCongelacion (String metodoCongelacion) {
        this.metodoCongelacion = metodoCongelacion;
    }
   
    public void setTiempoExposicion (int tiempoExposicion) {
        this.tiempoExposicion = tiempoExposicion;
    }
   
    public String getMetodoCongelacion() { return metodoCongelacion; }
   
    public int getTiempoExposicion() { return tiempoExposicion; }
   
    public void mostrarProducto() {
        super.mostrarProducto();
        System.out.println("\nMetodo de congelacion:\t\t"+metodoCongelacion
        +"\nTiempo de exposicion en Nitrogeno: "+tiempoExposicion);
    } 
   
    public static void mostrarTodosLosProductos() {
        int i = 1;
        Iterator<ProdCongPorNitrogeno> iterador = lista.iterator();
        while (iterador.hasNext()) {
            System.out.println("\nProducto congelado por nitrogeno "+i++);
            iterador.next().mostrarProducto();
        }
    } 
   
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.Scanner;

public class TestHerencia3 {
    public static void main (String[] args) {
        Calendar fechaEnvase = Calendar.getInstance();
        Calendar fechaCaducidad = Calendar.getInstance();
        fechaEnvase.set(2015,9,22);
        fechaCaducidad.set(2016,9,22);
        ProductoFresco producto1 = new ProductoFresco (42, fechaCaducidad,
                fechaEnvase, "Argentina");
        ProductoFresco producto2 = new ProductoFresco (43, fechaCaducidad,
                fechaEnvase, "Argentina");
        ProductoRefrigerado producto3 = new ProductoRefrigerado  (44, fechaCaducidad,
                fechaEnvase, "Argentina", "4258CA");
        ProductoRefrigerado producto4 = new ProductoRefrigerado  (45, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258CB");
        ProductoRefrigerado producto5 = new ProductoRefrigerado  (46, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258KJ");       
        ProdCongPorAire producto6 = new ProdCongPorAire (47, fechaCaducidad,
                fechaEnvase, "Argentina", "-5Cº", 25,25,10,40);
        ProdCongPorAire producto7 = new ProdCongPorAire (48, fechaCaducidad,
                fechaEnvase, "Argentina", "-3Cº", 27,23,12,38);
        ProdCongPorAgua producto8 = new ProdCongPorAgua (49, fechaCaducidad,
                            fechaEnvase, "Chile", "5cº", 4);
        ProdCongPorAgua producto9 = new ProdCongPorAgua (50, fechaCaducidad,
                            fechaEnvase, "Perú", "4cº", 3);
        ProdCongPorNitrogeno producto10 = new ProdCongPorNitrogeno(51, fechaCaducidad,
                                    fechaEnvase, "Bolivia", "3.4Cº", "Criogenico",20);
        System.out.println("Lista de productos: \n");
        System.out.println("Productos Frescos:");
        ProductoFresco.mostrarTodosLosProductos();
        System.out.println("\nProductos Refrigerados:");
        ProductoRefrigerado.mostrarTodosLosProductos();
        pause();
        System.out.println("\nProductos Congelados:");
        ProdCongPorAire.mostrarTodosLosProductos();
        pause();
        ProdCongPorAgua.mostrarTodosLosProductos();
        ProdCongPorNitrogeno.mostrarTodosLosProductos();
    }
    public static void pause() {
        Scanner sc = new Scanner(System.in);
        System.out.println("\nPresione una tecla para continuar...");
        sc.nextLine();
    }   
}

Gracias.

Saludos.

  Adrian

17
Hola,

Dejo mi solución para el ejercicio CU00687B

Esquema de herencia de clases. Saqué la  TestHerencia3 para que no confundan las flechas de cada objeto.


Código: [Seleccionar]
import java.util.Calendar;

public class Productos {
    private int numeroLote;
    private Calendar fechaCaducidad;

    public Productos(int numeroLote, Calendar fechaCaducidad) {
        this.numeroLote = numeroLote;
        this.fechaCaducidad = fechaCaducidad;
    }

    public void setNumeroLote(int numeroLote) {
        this.numeroLote = numeroLote;
    }

    public void setFechaCaducidad(int anio, int mes, int dia) {
        fechaCaducidad.set(anio, mes, dia);
    }
   
    public int getNumeroLote() { return numeroLote; }
   
    public Calendar getFechaCaducidad() { return fechaCaducidad; }
   
    public String toString() {
        return String.format("\nNumero de Lote :\t\t"+numeroLote+ "\n" + "Fecha de Caducidad :\t\t"
        +fechaCaducidad.getTime().toString());
    }
}



Código: [Seleccionar]
import java.util.Calendar;

public class ProductosFrescos extends Productos {
    private Calendar fechaEnvase;
    private String paisOrigen;
   
    public ProductosFrescos (int numeroLote, Calendar fechaCaducidad,
                                Calendar fechaEnvase, String paisOrigen) {
        super(numeroLote, fechaCaducidad);
        this.fechaEnvase = fechaEnvase;
        this.paisOrigen = paisOrigen;
    }

    public void setFechaEnvase (Calendar fechaEnvase) {
        this.fechaEnvase = fechaEnvase;
    }

    public void setPaisOrigen (String paisOrigen) {
        this.paisOrigen = paisOrigen;
    }

    public Calendar getFechaEnvase () { return fechaEnvase; }

    public String getPaisOrigen () { return paisOrigen; }

    public String toString () {
        return String.format   (super.toString()+"\nFecha de Envase :\t\t"+fechaEnvase.getTime()
                                .toString()+"\nPais de Origen :\t\t"+paisOrigen);
    }

}

Código: [Seleccionar]
import java.util.Calendar;

public class ProductosRefrigerados extends ProductosFrescos {
    private String codSupervision;

    public ProductosRefrigerados  (int numeroLote, Calendar fechaCaducidad,
                                   Calendar fechaEnvase, String paisOrigen,
                                   String codSupervision)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen);
        this.codSupervision = codSupervision;
    }

    public void setCodSupervision(String codSupervision) {
        this.codSupervision = codSupervision;
    }

    public String getCodSupervision() { return codSupervision; }

    public String toString() {
        return String.format(super.toString()+"\nCodigo Supervision Alimentaria:\t"+codSupervision);
    }
}

Código: [Seleccionar]
[code]import java.util.Calendar;

public class ProductosCongelados extends ProductosFrescos {
   
    private String tempMantenimiento;
   
    public ProductosCongelados  (int numeroLote, Calendar fechaCaducidad,
                                   Calendar fechaEnvase, String paisOrigen,
                                   String tempMantenimiento)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen);
        this.tempMantenimiento = tempMantenimiento;
    }

    public void setTempMantenimiento(String tempCongelacionRecomendada) {
       this.tempMantenimiento = tempMantenimiento;
    }
   
    public String getTempMantenimiento() { return tempMantenimiento; }
   
    public String toString() {
        return String.format(super.toString()+"\nTemperatura de mantenimiento:\t"+tempMantenimiento);
    }
}
[/code]

Código: [Seleccionar]
import java.util.Calendar;

public class ProdCongPorAire extends ProductosCongelados {

    //composición del aire con que fue congelado
    String porcentajeNitrogeno, porcentajeOxigeno, porcentajeDioxidoCarbono, porcentajeVaporAgua;

    public ProdCongPorAire  (int numeroLote, Calendar fechaCaducidad,
                                Calendar fechaEnvase, String paisOrigen,
                                String tempMantenimiento, String porcentajeNitrogeno,
                                String porcentajeOxigeno, String porcentajeDioxidoCarbono,
                                String porcentajeVaporAgua)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.porcentajeNitrogeno = porcentajeNitrogeno;
        this.porcentajeOxigeno = porcentajeOxigeno;
        this.porcentajeDioxidoCarbono = porcentajeDioxidoCarbono;
        this.porcentajeVaporAgua = porcentajeVaporAgua;
    }

    public String getComposicion() {
        return String.format("\nComposición aire al congelar :\n\t\t\t\tPorcentaje N:\t"+porcentajeNitrogeno+"\n\t\t\t\tPorcentaje O:\t"
        +porcentajeOxigeno+"\n\t\t\t\tPorcentaje CO2:\t" +porcentajeDioxidoCarbono+"\n\t\t\t\tPorcentaje vapor de agua: "+porcentajeVaporAgua);
    }

    public String toString() {
        return String.format(super.toString()+this.getComposicion());
    }
}

Código: [Seleccionar]
import java.util.Calendar;

public class ProdCongPorAgua extends ProductosCongelados {
   
    String salinidadAgua;
   
    public ProdCongPorAgua (int numeroLote, Calendar fechaCaducidad,
                            Calendar fechaEnvase, String paisOrigen,
                            String tempMantenimiento, String salinidadAgua)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.salinidadAgua = salinidadAgua;
    }

    public void setSalinidad (String salinidadAgua) {
        this.salinidadAgua = salinidadAgua;
    }
   
    public String getSalinidad () { return salinidadAgua; }
   
    public String toString() {
        return String.format(super.toString()+"\nSalinidad del agua:\t\t"+salinidadAgua);
    }
   
}

Código: [Seleccionar]
import java.util.Calendar;

public class ProdCongPorNitrogeno extends ProductosCongelados {
   
    String metodoCongelacion;
    int tiempoExposicion;
   
    public ProdCongPorNitrogeno   (int numeroLote, Calendar fechaCaducidad,
                                    Calendar fechaEnvase, String paisOrigen,
                                    String tempMantenimiento, String metodoCongelacion,
                                    int tiempoExposicion)
    {
        super(numeroLote, fechaCaducidad, fechaEnvase, paisOrigen, tempMantenimiento);
        this.metodoCongelacion = metodoCongelacion;
        this.tiempoExposicion = tiempoExposicion;
    }

    public void setMetodoCongelacion (String metodoCongelacion) {
        this.metodoCongelacion = metodoCongelacion;
    }
   
    public void setTiempoExposicion (int tiempoExposicion) {
        this.tiempoExposicion = tiempoExposicion;
    }
   
    public String getMetodoCongelacion() { return metodoCongelacion; }
   
    public int getTiempoExposicion() { return tiempoExposicion; }
   
    public String toString() {
        return String.format(super.toString()+"\nMetodo de congelacion:\t\t"+metodoCongelacion
        +"\nTiempo de exposicion en Nitrogeno:\t"+tiempoExposicion);
    }
   
}

Código: [Seleccionar]
import java.util.Calendar;
import java.util.Scanner;

public class TestHerencia3 {
    static Scanner sc = new Scanner(System.in);
    public static void main (String[] args) {
        Scanner sc = new Scanner(System.in);
        Calendar fechaEnvase = Calendar.getInstance();
        Calendar fechaCaducidad = Calendar.getInstance();
        fechaEnvase.set(2015,9,22);
        fechaCaducidad.set(2016,9,22);
        ProductosFrescos producto1 = new ProductosFrescos (42, fechaCaducidad,
                fechaEnvase, "Argentina");
        ProductosFrescos producto2 = new ProductosFrescos (43, fechaCaducidad,
                fechaEnvase, "Argentina");
        ProductosRefrigerados producto3 = new ProductosRefrigerados  (44, fechaCaducidad,
                fechaEnvase, "Argentina", "4258CA");
        ProductosRefrigerados producto4 = new ProductosRefrigerados  (45, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258CB");
        ProductosRefrigerados producto5 = new ProductosRefrigerados  (46, fechaCaducidad,
                fechaEnvase, "Uruguay", "4258KJ");       
        ProdCongPorAire producto6 = new ProdCongPorAire (55, fechaCaducidad,
                fechaEnvase, "Argentina", "-5Cº", "25","25","10","40");
        ProdCongPorAire producto7 = new ProdCongPorAire (56, fechaCaducidad,
                fechaEnvase, "Argentina", "-3Cº", "27","23","12","38");
        ProdCongPorAgua producto8 = new ProdCongPorAgua (57, fechaCaducidad,
                            fechaEnvase, "Chile", "5cº", "4");
        ProdCongPorAgua producto9 = new ProdCongPorAgua (58, fechaCaducidad,
                            fechaEnvase, "Perú", "4cº", "3");
        ProdCongPorNitrogeno producto10 = new ProdCongPorNitrogeno(65, fechaCaducidad,
                                    fechaEnvase, "Bolivia", "3.4Cº", "Criogenico",20);
        System.out.println("Lista de productos: \n");
        System.out.println("Productos Frescos:");
        System.out.println(producto1.toString()); System.out.println(producto2.toString());
        System.out.println(producto3.toString());
        System.out.println("\nProductos Refrigerados:");
        System.out.println(producto4.toString());
        System.out.println(producto5.toString());
        pausa();
        System.out.println("\nProductos Congelados:");
        System.out.println(producto6.toString());
        pausa();
        System.out.println(producto7.toString()); System.out.println(producto8.toString());
        System.out.println(producto9.toString()); System.out.println(producto10.toString());
    }
   
    static void pausa() {
        System.out.println("\nPress any key to continue . . . ");
        sc.nextLine();
    }
}

Muchas gracias!!

Adrian


19
Hola RaGa,

Para ser franco tuve que ver otros ejemplos de este ejercicio y googlear un poco, ya que me estaba sacando canas verdes no poder encontrar la manera de mostrar el contenido para dar a conocer las opciones validas a elegir.
Ahí fue donde encontré el método values(). Creo que lo que mas me complicó fue no encontrar información de éste en la documentación de enum en java.
No digo que no esté, sino que se me pasó o no supe buscar.

Gracias por tu devolución.

Saludos!

20
Hola!

Dejo mi código para el ejercicio CU00681B

Citar
EJERCICIO

Crea una clase Vehiculo donde definas un tipo enumerado MarcaDeVehiculo cuyos valores posibles serán FORD, TOYOTA, SUZUKI, RENAULT, SEAT. Establece como atributos de la clase matricula (tipo String) y marca (tipo MarcaDeVehiculo) y crea los métodos getters (para obtener) y setters (para establecer el valor) de los atributos. Escribe un pequeño programa de prueba donde verifiques que los métodos funcionan correctamente.

Código: [Seleccionar]
import java.util.Scanner;

public class Vehiculo {

    enum MarcaDeVehiculo {FORD, TOYOTA, SUZUKI, RENAULT, SEAT};
    private String matricula;
    private MarcaDeVehiculo marca;
    private Scanner sc = new Scanner(System.in);

    public void setMatricula(String matricula) { this.matricula = matricula;}

    public void setMarca(MarcaDeVehiculo marca) { this.marca = marca;}

    public void pedirMarca() {
        System.out.println("Selecciona una marca de la lista:");
        int i = 1;
        for (MarcaDeVehiculo tmp : marca.values()){
            System.out.println(i++ +") "+tmp);
        }
        boolean condicion = false;
        while (condicion == false) {
            switch (sc.nextInt()) {
                case 1 : marca=MarcaDeVehiculo.FORD;
                condicion = true;
                break;
                case 2 : marca=MarcaDeVehiculo.TOYOTA;
                condicion = true;
                break;
                case 3 : marca=MarcaDeVehiculo.SUZUKI;
                condicion = true;
                break;
                case 4 : marca=MarcaDeVehiculo.RENAULT;
                condicion = true;
                break;
                case 5 : marca=MarcaDeVehiculo.SEAT;
                condicion = true;
                break;
                default : System.out.println("Selecciona una opción valida");
            }
        }
    }

    public String getMatricula() { return matricula; }

    public MarcaDeVehiculo getMarca() { return marca; }
}

Código: [Seleccionar]
import java.util.Scanner;

public class Test {

    public static void main (String[] args) {
        Vehiculo auto = new Vehiculo();
        Scanner sc = new Scanner (System.in);
        auto.pedirMarca();
        System.out.println("Ingrese matricula");
        auto.setMatricula(sc.nextLine());
        System.out.println("Mostrando marca : "+auto.getMarca());
        System.out.println("\nMostrando matricula : "+auto.getMatricula());
    }
}

Gracias,

Saludos!

Páginas: [1] 2 3

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".