Fundamentos de Java (d)

1.java determinar si el objeto es un tipo de método de una clase?

   instanceof: la determinación de la propiedad pertenece a la clase o no distingue entre la clase padre es una subclase de

  getClass:. a.getClass () es igual a (ClassA.class)

El tipo de referencia 2.java

 1) de referencia fuerte: java común de referencia A a = new A ()

 2) las referencias suaves: También son útiles para describir algunos, pero no necesariamente objeto, antes de que el sistema a excepción de desbordamiento de la memoria, estos objetos serán recuperados dentro de una columna en una segunda gama de recuperación. Si la recuperación no tiene suficiente memoria, será lanzado excepción de desbordamiento de memoria. implementación de la clase SoftReference

 3) Aplicación Débil: Descripción no objetos necesariamente, la intensidad referencias blandas más débil que algunos objetos están asociados con referencias débiles solamente antes de que ocurra una recolección de basura. Después de JDK 1.2, ofrece clases para implementar referencias débiles WeakReference

 4) de referencia fantasma: Una referencia a la más débil. Configuración de un objeto de referencia virtual asociado con el único propósito para recibir una notificación cuando se recupera el sistema objeto. implementación de la clase PhantomReference.

papel 3.final

  1) la clase de modificación: clase puede no ser heredada

  2) métodos de modificación: Método bloqueados para evitar cualquier clase que hereda de modificar su significado; eficiencia. En las versiones anteriores de la aplicación Java, que se construirá en la llamada al método final. Sin embargo, si el método es demasiado grande, es posible que no vea la llamada incrustado cualquier actuación trae. En la versión más reciente de Java, la necesidad de utilizar estos métodos para optimizar la final.

 3) la modificación de variables: los tipos de datos básicos, un valor que indica el tipo de cambios de base de datos no puede ocurrir poco después de la inicialización; tipo de referencia, a continuación, después de su punto de inicialización no puede dejar que otros objetos, pero la referencia está dirigida contenido del objeto se cambia; un final = 3 indica una constante, debe asignarse sólo una vez, después de la asignación no cambia el valor de

4. ¿Cómo lograr la clonación

1) para lograr interfaz Cloneable y el clon de anulación () de la clase Object;

2) implementar Serializable: Clonación consigue mediante la serialización y deserialización de los objetos, se puede lograr la profundidad real de los clones.

  Nota: la serialización basada en la clonación y deserialización lograr no sólo un clon profundo, lo más importante Genéricos limitada, puede comprobar si el objeto que se clona serializable. El compilador comprueba se hacen, no se produce una excepción en tiempo de ejecución, este esquema es mucho mejor que usar el método clon del clon de la clase Object. Deje que los problemas en tiempo de compilación expuestos siempre es mejor dejar el asunto al tiempo de ejecución.

3) modo de reflexión, utilizando una copia de la reflexión de datos de objeto.

La copia de copia profunda y superficial
 1) copia superficial: África Central objeto base y un objeto de la referencia objeto original existe la misma referencia de memoria [tipos Propiedades generales generan clonación superficial, clon es decir al menos dos copias de una simple referencia al punto de referencia para el mismo bloque de espacio], por lo que estos no la modificación objeto básico también cambia antes y después de los objetos de clonación
 2) copia en profundidad: clones completos pueden ser implementados, puede ser una manera reflectante o secuencia de la forma

6. Fecha y Hora

1) Java 8 se puede usar para obtener java.time.LocalDateTimel

2) Calendario

:

 

 3) Categorías de SimpleDataFormat:

 

 7. Impresión de la hora actual de ayer

importación java.util.Calendar;
público  de clase YersterdayTime {
     públicas  estáticas  void main (String [] args) { 
        Calendario c = Calendar.getInstance (); 
        c.add (Calendar.DATE, -1 ); 
        System.out.println (c); 
    } 
}
importación java.time.LocalDateTime;
público  de clase YersterdayTime {
     // Java8 
    pública  estáticas  void main (String [] args) { 
        LocalDateTime hoy = LocalDateTime.now (); 
        LocalDateTime ayer = today.minusDays (1 ); 
        System.out.println (ayer); 
    } 
}

8.error 和 excepción

  error: Error anormal a nivel de sistema y el programa no tiene que tratar, es un problema grave en el caso de la recuperación no es imposible, pero muy difícil, tales como desbordamiento de la memoria, el programa no se puede esperar para manejar una situación de este tipo

  excepción: la necesidad de capturar los procedimientos requeridos o manejo de excepciones, es un diseño o implementación cuestiones, es decir, significa que si se ejecuta correctamente, la situación no va a suceder

9.try-con-recursos

   probar uno o más recursos de instrucción especifica; alcanzado objeto de clase java.lang.AutoCloseable / java.io.Closeable

  Hace uso:

público  clase ReadFile {
     público  estáticas  void principales (String [] args) { 
       lector BufferedReader = nulo ; 
        Cadena tampón = nulo ;
        tratar { 
            lector = nuevo BufferedReader ( nuevo FileReader ( "src / testLectura.txt" ));
            hacer { 
                tampón = reader.readLine (); 
                System.out.println (tampón); 
            } Mientras que (reader.read () = -1! ); 
        } catch(IOException e) { 
            e.printStackTrace (); 
        } finally {
             try {
                 // problema: la llamada que se mostrará cerca, sino también añadir una estrecha capa de intentar la captura no es un problema
                 @ Segundo problema: Cierre función también tiene puede lanzar una excepción si se produce una excepción aquí, bloque try dentro de la información de anomalía se descarta 
                reader.Close (); 
            } la captura (IOException e) { 
                e.printStackTrace (); 
            } 
        } 
    } 
}

Después de su uso:

público  clase ReadFile {
     público  estáticas  void principales (String [] args) { 
        Cadena bufferSugar = nulo ;
        tratar (BufferedReader readerSugar = nuevo BufferedReader ( nuevo FileReader ( "src / testLectura.txt" ))) { 
            bufferSugar = readerSugar.readLine (); 
            System.out.println (bufferSugar); 
        } Catch (IOException e) {
             // generada automáticamente TODO captura bloque 
            e.printStackTrace (); 
        } 
    } 
 
}

10.throw 与 lanza

 1) Lanza: se utiliza para declarar una excepción, no hacer nada, que hace un llamamiento a que pase; representa la posibilidad de anormal no necesariamente ocurrirá, se puede declarar más

 2) throw: excepción específica tiro; ejecutada tiro, va a lanzar una excepción, y sólo lanzar una

 

 

Supongo que te gusta

Origin www.cnblogs.com/dxjx/p/12448662.html
Recomendado
Clasificación