Autor Tema: Ejercicio CU00681B ejemplo enum java tipos enumerados types must not be local  (Leído 2660 veces)

Enzo

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 82
    • Ver Perfil
Hola,

Adjunto el ejercicio del tema "CU00681B ejemplo enum java tipos enumerados types must not be local" para su corrección:

Objeto Vehiculo:
Código: [Seleccionar]
// EJERCICIO DEL TIPO ENUMERADO
// ----> CU00681B ejemplo enum java tipos enumerados types must not be local.pdf

// clase 1. Objeto Vehículo con un tipo Enumerado con varias marcas.
/**
 * Esta clase define un Objeto Vehículo con un tipo Enumerado con varias marcas.<br>
 * Ejercicio del Tema "CU00681B ejemplo enum java tipos enumerados types must not be local"
 * @author: Lorenzo Fernández Asensio
 * @version: 20151116.01
 */

public class Vehiculo_CU00681B {

    // Declaración de un Tipo Enumerado
    enum MarcaDeVehiculo { FORD, TOYOTA, SUZUKI, RENAULT, SEAT };

    // Inicialización de Variables
    private String matricula; // matrícula (tipo String)
    private MarcaDeVehiculo marca; // marca (tipo MarcaDeVehículo)

    /**
     * Constructor del Vehículo
     * @param matricula El parámetro matricula define la Matrícula del Vehículo
     * @param marca El parámetro marca define la Marca del Vehículo
     */
    public Vehiculo_CU00681B () {
        matricula = "";
        marca = null;
    }//Cierre del constructor

    /**
     * Método para establecer la Matrícula del Vehículo
     * @param valorMatricula El parámetro valorMatricula define el valor que contendrá la matrícula del Vehículo
     */
    public void setMatricula (String valorMatricula) {
        matricula = valorMatricula;
    } //Cierre del método para establecer la matrícula del Vehículo

    /**
     * Método para establecer la Marca del Vehículo
     * @param valorMarca El parámetro valorMatricula define el valor que contendrá la Marca del Vehículo
     */
    public void setMarca (MarcaDeVehiculo valorMarca) {
        marca = valorMarca;
    } //Cierre del método para establecer la matrícula del Vehículo

    /**
     * Método para para obtener la Matrícula del Vehículo
     * @return La Matrícula del Vehículo
     */
    public String getMatricula(){ return matricula; }

    /**
     * Método para para obtener la Marca del Vehículo
     * @return La Marca del Vehículo
     */
        public MarcaDeVehiculo getMarca(){ return marca; }

} // Cierre de la clase

Test de Prueba:
Código: [Seleccionar]
// EJERCICIO DEL TIPO ENUMERADO
// ----> CU00681B ejemplo enum java tipos enumerados types must not be local.pdf

// clase 2. Test para crear Objeto Vehículo con un tipo Enumerado con varias marcas.
/**
 * Esta clase define un Test para probar el Objeto Vehiculo_CU00681B.<br>
 * Ejercicio del Tema "CU00681B ejemplo enum java tipos enumerados types must not be local"
 * @author: Lorenzo Fernández Asensio
 * @version: 20151116.01
 */
import java.util.Scanner; //Importación de la clase Scanner para intro valores por teclado

public class TestVehiculoTEnum_CU00681B {

    public static void main (String [ ] Args) {

        // Campos de la clase
        // Inicialización de una variable para contener la entrada por teclado
        String entradaTeclado = "";
        // Inicialización de una variable que controla si es correcta la marca introduccida
        boolean marcaIntroOK = false;

        // Se crea un objeto de la clase Vehículo_CU00681B
        Vehiculo_CU00681B vehiculoMain = new Vehiculo_CU00681B();

        //Creación deL objeto Scanner
        Scanner entradaEscaner = new Scanner (System.in);

        // Se limpia la pantalla de la Consola
        System.out.println("\f");
        // Se muestra en pantalla un mensaje de incio
        System.out.println("Hola. Comenzamos la creación de un Objeto de un Vehículo.");

        // Se Solicita la matrícula del Vehículo
        System.out.print("Introduzca la Matrícula del Vehiculo: ");
        // Invocación un método sobre un objeto Scanner para coger la matrícula introducida por teclado
        entradaTeclado = entradaEscaner.nextLine ();

        // Se realiza el llamamiento al método de la clase Vehiculo_CU00681B para recoger el valor de la Matrícula
        vehiculoMain.setMatricula(entradaTeclado);

        // Bucle que se repite miesntras marcaIntroOK = false. es decir, mientras no se introduzca una marca correcta
        do {
            // Se Solicita la marca del Vehículo
            System.out.print("Introduzca una de las siguientes Marcas de Vehiculo (Ford, Toyota, Suzuki, Renault, Seat): ");
            // Invocación un método sobre un objeto Scanner para coger la matrícula introducida por teclado
            entradaTeclado = entradaEscaner.nextLine ();

            // Comprobación de que marca se introduce
            // Y se realiza el llamamiento al método de la clase Vehiculo_CU00681B para recoger el valor de la Marca
            switch(entradaTeclado.toLowerCase()){
                case "ford":
                vehiculoMain.setMarca(Vehiculo_CU00681B.MarcaDeVehiculo.FORD);
                marcaIntroOK = true;
                break;
                case "toyota":
                vehiculoMain.setMarca(Vehiculo_CU00681B.MarcaDeVehiculo.TOYOTA);
                marcaIntroOK = true;
                break;
                case "suzuki":
                vehiculoMain.setMarca(Vehiculo_CU00681B.MarcaDeVehiculo.SUZUKI);
                marcaIntroOK = true;
                break;
                case "renault":
                vehiculoMain.setMarca(Vehiculo_CU00681B.MarcaDeVehiculo.RENAULT);
                marcaIntroOK = true;
                break;
                case "seat":
                vehiculoMain.setMarca(Vehiculo_CU00681B.MarcaDeVehiculo.SEAT);
                marcaIntroOK = true;
                break;
                default: System.out.println("ERROR EN LA INTRODUCCIÓN DE LA MARCA");
            }

        } while (marcaIntroOK == false);

        // Se muestran en pantalla los atributos del Objeto Vehículo
        System.out.println("Los Datos del Vehiculo son: ");
        System.out.println("Matrícula: " + vehiculoMain.getMatricula());
        System.out.println("Marca: " + vehiculoMain.getMarca());

    } // Fin del Main

} // Fin de la Clase

Y tengo una duda. Cuando genero la documentación del Test no me sale el comentario inicial. Por favor, ¿podríais decirme a que es debido?
Porque por mas vueltas que le he dado no encuentro la razón.

Espero vuestros comentarios,

Muchas Gracias,

Saludos,
« Última modificación: 16 de Noviembre 2015, 20:38 por Enzo »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Hola Enzo. El ejercicio lo veo bien resuelto. Como siempre destacar tus buenos comentarios.

El comentario inicial no te aparece en la documentación porque tienes que situarlo justo antes de donde empieza la clase, es decir, justo antes de esta linea:

Código: [Seleccionar]
public class TestVehiculoTEnum_CU00681B {
Saludos.

Enzo

  • Principiante
  • **
  • APR2.COM
  • Mensajes: 82
    • Ver Perfil
Hola Pedro,

OK. Ya lo he cambiado.

Al realizar el cambio me he dado cuenta de otro error que tenia:
Había puesto dos puntos [:] después de "@author" y "@version" y seguían sin verse en la documentación. Una vez que lo he quitado todo funciona perfectamente.

Muchas Gracias,

Un Saludo,

 

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".