Autor Tema: Ejercicio CU00624B error incompatible Types java  (Leído 6722 veces)

KillerNemesis

  • Sin experiencia
  • *
  • Mensajes: 25
    • Ver Perfil
Ejercicio CU00624B error incompatible Types java
« en: 19 de Septiembre 2014, 23:04 »
Que tal, Estoy aprendiendo a "programar" gracias a ustedes, aun me falta bastante pero aqui estamos con todo y echandole ganas!!!
Pues tengo una duda que me tiene la cabeza echa un lio pues resulta que despues de terminar el codigo e intentar compilarlo me envia un mensaje de error en apartado de CONSTRUCTOR "añoEdicion" en el cual me dice Incompatible Types
por lo cual decidi dejar solo las comillas pero me salta otro error con el mismo mensaje pero me dice que el error esta en las comillas; porque puede estar ocurriendo esto?

De antemano agradezco su ayuda!

Saludos!

Este es mi codigo

 public DiscoMusical () {
        titulo = "Desconocido";
        autor = "Desconocido";
        anoEdicion = "2014";
        formato = "MP3";
        digital = "Itunes";
    } //Cierre del constructor... el codigo continua...

    //Metodo para establecer titulo de la cancion
    public void setTitulo (String valorTitulo){
        titulo = valorTitulo;//El titulo del objeto DiscoMusical
    }//Cierre del metodo

    //Metodo para establecer el autor del Objeto DiscoMusical
    public void setAutor (String valorAutor) {
        autor = "Autor" + valorAutor; //autor del objeto DiscoMusical
    }//Cierre del metodo

    //Metodo para establecer añoEdicion del objeto DiscoMusical
    public void setAnoEdicion (int valorAnoEdicion){
        anoEdicion = AnoEdicion;
    }//Cierre del metodo

    //Metodo para establecer digital del objeto DiscoMusical
    public void setDigital (boolean valorDigital){
        digital = valorDigital;
    }//Cierre del metodo

    //Metodo para obtener formato del Objeto DiscoMusical
    public String getFormato () {return fotmato;}

}//Cierre de la Clase

   
       
« Última modificación: 21 de Septiembre 2014, 19:31 por Alex Rodríguez »

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:Ejercicio CU00624B
« Respuesta #1 en: 20 de Septiembre 2014, 03:10 »
 Hola KillerNemesis!

Antes que nada te pongo en conocimiento, que para publicar codigo en el foro, primero debes de dar clic sobre el botón con el símbolo #, dicho botón lo encuentras en la parte arriba de donde escribes tus ejercicios. Cuando des clic sobre este botón te aparecerán unas etiquetas similares a estas: "[cod][/cod]" luego en medio de esas etiquetas pegas el codigo de tu clase, un ejemplo seria algo asi:
 [cod]public class AquiPegasTuCodigo...[/cod]

Por otra parte, en cuanto a tu ejercicio, has pegado un codigo de clase con fragmentos de codigo faltante, olvidaste pegar lo que seria el comienzo del codigo, algo así como:
Código: [Seleccionar]
public class DiscoMusical
{
    private String titulo, autor, formato;
    private int anoEdicion;
    private boolean digital;
Si solo fue un descuido al copiar y pegar, supongo que tu clase cuenta con un fragmento de código como este que acabo de pegar, que de paso e usado para completar el código de tu clase e identificar lo posibles errores.

En respuesta a tu pregunta o duda
Citar
Pues tengo una duda que me tiene la cabeza echa un lio pues resulta que después de terminar el codigo e intentar compilarlo me envia un mensaje de error en apartado de CONSTRUCTOR "añoEdicion" en el cual me dice Incompatible Types
Este error de compilación hace referencia a que estas asignando un valor a una variable cuyo tipo de valor no coincide con el tipo de variable, debes de tener en cuenta que una variable recibe un valor de su tipo declarado, por ejemplo si declaro: int edad = "10"; al intentar compilar, me saltara un error: imcopatible types: java.lang.String cannot be converted to int.  Lo que de manera explicita, significa que estoy intentando asignar un valor que no es el tipo de valor esperado para la variable edad.

Como corregirlo? asigando un valor cuyo tipo sea compatible con el tipo de la variable edad, si edad es tipo int pues e de declarar int edad = 10;

Donde estuvo el error? el error en el primer caso, tubo en que intente asignar un valor tipo String (cadena de texto) a la variable edad, que espera un valor tipo int (numero entero).

No es lo mismo "10" que 10, todo lo que este entre "comillas dobles" sera un String, en tu código has inicializado todas las variables con un valor String, donde tienes variables que esperan como valor inicial un String ("cadena de texto entre comillas dobles"), otras un int (numero entero) y otra un valor boolean (true o false) .

En cuanto al constructor de la clase, lo correcto al inicializar variables en un constructor es asignar un valor inicial por defecto, un ejemplo de como inicializar las variables de esta clase en el constructor, de una forma favorable seria el siguiente:
Código: [Seleccionar]
public DiscoMusical ()
    {
        titulo = "Desconocido";
        autor = "Desconocido";
        anoEdicion = 0;
        formato = "Desconocido";
        digital = false;
    } //Cierre del constructor
A si cada vez que crees un objeto de esta clase, cada objeto se creara con la finalidad de asignar un valor diferente (o igual) a cada una de sus variables, mediante su correspondiente metodo set.

Te recomiendo que analices lo que he intentado explicarte, y que rediseñes el código de tu ejercicio para que cumpla con lo que se pide en dicho ejercicio.

Cualquier duda no dudes en preguntar.

Saludos!
« Última modificación: 20 de Septiembre 2014, 03:13 por Sniper »
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

toni_apr

  • Avanzado
  • ****
  • Mensajes: 497
  • Curiosidad, es uno de los pilares del Conocimiento
    • Ver Perfil
Re:Ejercicio CU00624B
« Respuesta #2 en: 20 de Septiembre 2014, 08:49 »
Hola KillerNemesis
Estoy de acuerdo con lo que dice Sniper
Tu error es una asignación de valor incorrecta

Aquí tienes un enlace donde se explica como inicializar variables
https://www.aprenderaprogramar.es/index.php?option=com_content&view=article&id=424:ejemplos-de-uso-de-tipos-de-variables-datos-en-java-declaracion-inicializacion-de-variables-cu00622b&catid=68:curso-aprender-programacion-java-desde-cero&Itemid=188

Si tienes conocimientos básicos de programación puedes saltarte los primeros ejercicios, pero sino, deberías hacerlos todos, o al menos leerlos y decidir si es cosa sabida o que debas practicar.

Saludos

KillerNemesis

  • Sin experiencia
  • *
  • Mensajes: 25
    • Ver Perfil
Re:Ejercicio CU00624B error incompatible Types java
« Respuesta #3 en: 22 de Septiembre 2014, 20:59 »
Les agradesco mucho sus comentarios Sniper y toni_apr me ayudaran mucho sus observaciones, y para futuras publicaciones no olvidare utilizar el boton (Insertar Codigo) fue un descuido que no pegue el inicio del codigo Sniper.
 Si hare todos los ejercicios toni_apr porque soy virgen en esto de la `programacion jajaja! asi podre aprender mas sobre todos los posibles escenarios que pudieran ocurrir y como aprender a resolverlos!

Saludos!!!
« Última modificación: 22 de Septiembre 2014, 21:23 por KillerNemesis »

 

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