Buen día.
El tema de la clase de esta semana es la herencia:
En programacion orientada a objetos la herencia es un mecanismo que sirve para reutilizar y extender software. La herencia facilita la creación de objetos a partir de otros objetos ya existentes obteniendo características similares.
polimorfismo es la capacidad de un objeto de tener diferentes formas. En Programación orientada a objetos polimorfismo se refiere a los métodos de una clase. Un objeto "Animal" tiene el método habla pero como todos sabemos no todos los animales hablan igual así que la clase habla del método se puede declarar abstracta para que cuando alguien construya una clase hija defina el método.
Eh estado buscando en la api de java y eh encontrado algunas clases que me parece que me podrían ser muy útiles. Decidiré si extiendo o implemento alguna dependiendo de la utilidad de cada una y marcare con "**" las que muy probablemente utilice para heredar. las clases son las siguientes:
Reader
- File: Esta clase se encarga de crear ficheros, eliminarlos, cambiar nombre, etc.
No me parece que Reader debiese heredar la clase File mas bien me serviría en la clase Writer pero aun asi me parece muy importante para el proyecto.
http://download.oracle.com/javase/1.5.0/docs/api/java/io/File.html
- **InputStreamReader: Esta clase se encarga exclusivamente de obtener los caracteres de los arcihvos ya sea en grupo o caracter por carácter.
http://download.oracle.com/javase/1.5.0/docs/api/java/io/InputStreamReader.html
- Charset: Esta clase contiene métodos para codificar y decodificar caracteres de un archivo de texto. Probablemente no sea heredada pero me parece util.
http://download.oracle.com/javase/1.5.0/docs/api/java/nio/charset/Charset.html
Text Manager
- String: La clase TextManager no heredara esta clase pero me parece la mas importate para la clase que administra el texto.
http://download.oracle.com/javase/1.3/docs/api/java/lang/String.html
Writer
- **OutputStreamWriter: Esta clase tiene los metidos necesarios para escribir caracteres en un archivo, es heredada de la clase File por lo cual podre utilizar métodos de esta. Al trabajar en el código me di cuenta que no es adecuada para heredarla pero probablemente le saque provecho al escribir.
http://download.oracle.com/javase/1.5.0/docs/api/java/io/OutputStreamWriter.html
Sheet
- **JTextArea: Esta clase se encarga de dibujar texto en la pantalla escogí esta clase por que tiene muchas opciones para trabajar con el texto. La clase Sheet muy probablemente heredara esta clase.
http://download.oracle.com/javase/1.5.0/docs/api/javax/swing/JTextArea.html
GUI
- **JFrame: Esta clase nos da los métodos para mostrar una ventana que puede contener otras clases como por ejemplo botones y la hoja o "Sheet" que imprimirá el texto. La clase GUI heredara a la ventana y contendrá las demás partes de la interfaz.
http://download.oracle.com/javase/1.5.0/docs/api/javax/swing/JFrame.html
Para la clase principal no creo necesario que extienda ninguna clase pues esta se encarga de juntar las demas clases y de verificar su correcto funcionamiento.
Saludos.
Fine by me. Tus flechas están al revés. Piensa bien en dónde va a ser la parte "inteligente" del editor y explícanos eso en la presentación de la semana siguiente. 5.
ResponderBorrar