Supongamos que tengo dos clases derivadas de una tercera clase abstracta:¿Hay alguna forma de fundición "tipo segura" en Java?
public abstract class Parent{
public Parent(){
}
}
public class ChildA extends Parent {
public ChildA {
}
}
public class ChildB extends Parent {
public ChildB {
}
}
En C# que podría manejar la fundición de una manera segura tanto escribir haciendo:
ChildA child = obj as ChildA;
lo que haría niño == null si no era un objeto tipo ChildA. Si tuviera que hacer:
ChildA child = (ChildA)obj;
... en C# esto arrojaría una excepción si el tipo no fuera correcto.
Entonces, básicamente, ¿hay alguna manera de hacer el primer tipo de fundición en Java? Gracias.
Duplicar : http://stackoverflow.com/questions/148828/how-to-emulate-c-sharp-as-operator-in-java –
Disculpas. Busqué "tipo seguro de java de fundición". No se me ocurrió buscar "como palabra clave java". – garrettendi
Y luego explota con un NPE. ;) –