| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    Cómo encasillado en Java 6
    En la programación de computadoras , encasillamiento se refiere a tomar un objeto de un tipo y convertirlo en un objeto de otro tipo. En Java 6 , esto por lo general , aunque no siempre, se debe ya sea upcasting o downcasting , que significa lanzar un objeto hacia arriba o abajo en la jerarquía de herencia. Instrucciones
    1

    Pegar las siguientes clases de Java en un archivo de texto en blanco. Estos son la clase que se utilizará para el tutorial:

    public class Persona { }

    MalePerson public class Persona { }
    2

    Pega el siguiente upcast :

    persona p = new MalePerson ( " Tom ");

    MalePerson la clase es una subclase de la persona, por lo que este es un yeso en la jerarquía . Conversión hacia arriba es el tipo más fácil del reparto de lograr. Java , simplemente sabe qué hacer cuando se asigna una subclase de uno de sus antepasados. Tome nota , sin embargo : Java siempre recuerda lo que un objeto es en realidad durante una conversión hacia arriba . Incluso ahora que la MalePerson " Tom " se ha asignado a una persona objeto genérico , Java recuerda que este objeto es realmente un MalePerson
    3

    Pega el siguiente abatido : .
    < P > persona p = new MalePerson ( " Tom ");

    MalePerson m = ( MalePerson ) p;

    Downcasts como este, que se mueven en la jerarquía , exigen al programador especificar el tipo de clase que se utiliza para el reparto entre paréntesis. Sin embargo , downcasting es más complejo que upcasting
    4

    intente realizar las siguientes abatido :

    Persona p = new Persona ( " Jane ");

    MalePerson m = . ( MalePerson ) p;

    este intento falla , y no debería ser difícil ver por qué. Si bien es razonable suponer que un MalePerson es una persona, no es razonable que el equipo que asumir que todas las personas son MalePersons . Algunos pueden ser FemalePersons , y la diferencia puede o no puede ser trivial para los propósitos de la computadora. Sólo para estar seguro, el programa genera un error .

    Abatido sólo puede ocurrir si se ha producido una conversión hacia arriba primero , por lo que la conversión hacia arriba en el paso 3 es válido , pero no en el paso 4 . Esto puede hacer que el sonido upcasting inútil al principio. Se plantea la pregunta de por qué la conversión hacia arriba se llevó a cabo en el primer lugar, pero sostienen que el pensamiento
    5

    Considere el siguiente método : .

    Public void saluda (Persona p ) {

    if ( p instanceof MalePerson ) {

    MalePerson m = ( MalePerson ) p;
    m.doMaleThings

    () ;

    } else if ( p instanceof FemalePerson ) {

    FemalePerson f = ( MalePerson ) p;

    f.doFemaleThings ();

    } else throw new GenderConfusionException ();

    }

    el escritor de este método no tiene manera de saber de antemano si este método se llama con un MalePerson o un objeto FemalePerson , por lo que utiliza la persona objeto genérico. A continuación , utiliza el comando instanceof para sondear la persona dada y ver si habría de hacerlo abatido como un hombre o una persona de sexo femenino .

    Previous :

    next :
      Artículos relacionados
    ·Cómo extraíble Java 
    ·Cómo convertir una cadena UTF - 8 con Java 
    ·Cómo crear formularios de inscripción en Java 
    ·NetBeans tipos de proyectos 
    ·Cómo crear una cuadrícula en Java 
    ·Cómo comparar los caracteres Ignorar Casos en Java 
    ·Cómo crear documentos XML con JDOM 
    ·Cómo conectar un JButton a un JTextField 
    ·Cómo pasar por referencia en Java 
    ·Cómo agregar una interfaz gráfica de usuario de códi…
      Artículos destacados
    ·Cómo agregar una casilla de verificación de la column…
    ·Cómo hacer varios espacios consecutivos en PHP 
    ·Cómo hacer un EXE en Visual Basic 
    ·Python para programadores principiantes 
    ·Cómo crear un formulario de control nuevo en VB6 
    ·Cómo aplicar una función a cada índice de matriz PHP…
    ·Un Explorador de secuencias de comandos de Procesos Ind…
    ·Cómo interpretar una cadena como un valor booleano en …
    ·Cómo escribir while bucle 
    ·Cómo realizar la prueba en una lista en Python 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com