lectura en serie Java y escribir 100 caracteres, el patrón decorador con tampón

一, BufferedWriter

1. Carácter leer y escribir se puso a prueba con un tampón

 

Paquete com.bjpowernode.java_learning; 

Importación del java.io. * ; 


pública  clase D100_1_BufferedWriter { 

  públicas  estáticas  vacíos principales (args String []) lanza la excepción { 

    // crear el flujo de salida de caracteres con tampón de 

    dirección de cadena = "C: \ \\\ Usuarios \\\\ lenovo1 \\\\ \\\\ áreas de trabajo MyEclipse CI \\\\ \\\\ java_learning src \\\\ \\\\ com bjpowernode \\\\ \\\\ java_learning Temp1 .txt " ; 

    BufferedWriter BW = nuevo nuevo BufferedWriter ( nuevo nuevo FileWriter (dirección)); 

    // o así escrita de la siguiente 

    //BW = new nueva BufferedWriter, BufferedWriter, (el OutputStreamWriter (nuevo nuevo un FileOutputStream (dirección, true))); 

    // empezar a escribir 

    bw.write ( "jdfoishjfuji" ); 

    // escribir un separador de línea 

    bw.newLine (); 

    bw.write ( " esta es una oración de prueba " ); 

   

    // actualización 

    bw.flush (); 

    // estrecha 

    bw.close (); 

   

    // uso BufferedReader y BufferedWriter para completar la copia 

    address2 cadena =" C: \\\\ \\\ los usuarios \ lenovo1 áreas de trabajo \\\\ \\\\ \\\\ java_learning MyEclipse CI COM \\\\ \\\\ \\\\ src java_learning bjpowernode \\\\ \\\\ temp2.txt " ; 

    BufferedReader br = nueva nueva BufferedReader ( nuevo nuevoFileReader (dirección)); 

    BufferedWriter bw2 = nuevo BufferedWriter ( nuevo FileWriter (address2)); 

    Cadena temp = nulo ; 

    mientras que ((temp = br.readLine ()) =! nula ) { 

      bw2.write (temp); 

      bw2.newLine (); 

    } 

    Bw2.flush (); 

    br.close (); 

    bw2.close (); 

   

  } 
}

En segundo lugar, el patrón decorador

1. En primer lugar dar un ejemplo sencillo

Para M1 A100 método en esta clase, queremos ampliar, de una manera sencilla podemos pensar es crear una nueva clase B100, vuelva a grabar método

Pero esta asociación escribió demasiado fuerte, también es posible utilizar otros métodos --- Decorator

2. Toma nota

(1) patrón decorador requerido: decorador contiene referencia en decorador

(2) el patrón decorador requerido: decorador debe ser decorado y uno y el mismo tipo

 

empaquetar com.bjpowernode.java_learning; 


pública  clase D100_2_DecoratorMode { 

  públicas  estáticas  void main (String [] args) lanza la excepción { 

    A100 un = nuevo A100 (); 

    B100 b = nuevo B100 (); 

    a.m1 (); 

    b.m1 (); 

    System.out.println ( "=============" ); 

    // 1.创建被装饰者

   

    FileReader fr = nuevo FileReader (); 

    // 2.创建装饰者

    BufferedReader br = nuevo BufferedReader (fr); 

   

    //3. El enfoque indirecto es llevar a cabo la decoración por los decoradores que realizan quienes método 

    br.close (); 

  } 
} 



clase ALOO { 

  público  vacío M1 () { 

    System.out.println ( "M1" ); 

  } 

} 

clase Bloo la extiende ALOO { 

  público  vacío M1 () { 

    super .M1 (); 

    System.out.println ( "sobrescrito" ); 

  } 

} 

// utiliza para cerrar método BufferedReader FileReader de expansión de 

la clase BufferedReader la extiende parent100 { // BufferedReader100 es un decorador 

  // relación 

  lector FileReader;// FileReader debe ser decorado por 

  // Constructor 

  del BufferedReader (FileReader lector) { 

    el presente .reader = lector; 

  } 

  // para el método de cierre de FileReader expandió 

  pública  vacío close () { 

    // extendida 

    System.out.println ( " código de expansión 1 " ); 

    reader.Close (); 

    System.out.println ( " código de expansión 2 " ); 

  } 

} 

la clase del FileReader la extiende parent100 { 

  público  vacío Close () { 

    System.out.println ( " guanbi " ); 

  } 

} 

abstracta  de claseparent100 { 

  pública  abstracta  vacío close (); 

}

En tercer lugar, el código fuente:

D100_1_BufferedWriter.java

D100_2_DecoratorMode.java

https://github.com/ruigege66/Java/blob/master/D100_1_BufferedWriter.java

https://github.com/ruigege66/Java/blob/master/D100_2_DecoratorMode.java

2.CSDN: https: //blog.csdn.net/weixin_44630050

3. Parque blog: https: //www.cnblogs.com/ruigege0000/

4. aprecia la importancia número público de micro-canales: la transformada de Fourier número personal público, sólo para los intercambios de aprendizaje, entre bastidores respuesta "regalos" para obtener grandes volúmenes de datos materiales de aprendizaje

 

 

Supongo que te gusta

Origin www.cnblogs.com/ruigege0000/p/12535997.html
Recomendado
Clasificación