la comprobacion de tipos es lo q hace el compilador para verificar q no haya incompatibilidades con los datos?
por ejemplo si hago int x = "asdas"; lo detecta mientras compila la comprobacion de tipos? o tiene alguna otra funcion?
| |||
Respuesta: comprobacion de tipos La comprobación de tipos es unos de los chequeos que se realizan en el tiempo de compilación dentro de lo que llamaría el chequeo de sintaxis por decirlo de alguna manera,
Código Java:
en este caso, tanto el IDE que utilices como la compilación detectarán el fallo en la sintaxis.Ver original También podrías tener problemas con "los tipos de datos" en tiempo de ejecución, sobre todo cuando utilizas los conceptos de abstracción, interfaz o herencia, donde para el compilador sintacticamente hablando será correcto pero en tiempo de ejecución será incorrecto. Intentare explicarme: Imaginemos que tenemos una interfaz Vehiculo, y tenemos dos clases que la implementan, la clase Coche y la clase Camion.
Código Java:
Ver original En el código se puede ver como en ese método podemos recibir tanto objetos coche como objetos camión, pero sea lo que sea (coche o camión), siempre se hace un casting a la clase Coche, por lo que cuando recibamos un camión como argumento, nos dará un ClassCastExcepcion en tiempo de ejecución, ya que sintacticamente hablando es correcto y el compilador nos compilará el programa. No sé si esto responde a tu pregunta. Saludos. |
| |||
Respuesta: comprobacion de tipos Cita: Por esto no debe usarse el "casteo"...o por lo menos no en ese ejemplo. siempre se hace un casting a la clase Coche, por lo que cuando recibamos un camión como argumento, nos dará un ClassCastExcepcion |
Etiquetas: |