Heyyyyyyyyyyyyyyy

Aprende a programar microcontroladores en C... http://tecdigitaldelbajio.com/software-tarjeta.html

martes, 23 de junio de 2009

Análisis de la Clase TextField



Introducción

Repasemos un poquito las siguientes definiciones, que en post anteriores ya vimos.
  • Clase: Yo simplemente diría que es una plantilla para crear objetos
  • Objetos: son instancias de una clase (en otras palabras: provienen de una clase o también se puede decir que se crean a partir de una clase)
Anteriormente se dijo que Java es un lenguaje orientado a objetos, en java todo, absolutamente todo proviene de una clase. Veamos una clase, con la que ya hemos trabajado:
  • TextField: Campo de texto, con el que, el usuario puede interactuar.
Ya se vio en el Ejemplo #3 como se crean objetos de la clase TextField. La figura siguiente muestra dos objetos de la clase TextField en el netBeans

Al arrastrar y soltar el elemento llamado TextField, NetBeans crea automáticamente el objeto, y también automáticamente le da un nombre, como se observa en la figura, el nombre del objeto 1 es llamado textField. El nombre del segundo objeto (objeto 2, en la figura) no se observa pero NetBeans le llama textField1 (dando clic en el objeto se puede ver su nombre de instancia) y si hubiera otro seria textField2 y así sucesivamente se le asignan los nombres a las instancias.

Existe entonces una clase llamada TextField (recuerde la definición de clase: una plantilla para crear objetos) y a partir de ella se crean los objetos llamados textField, textField1… textFieldn, los que sean necesarios en mi programa. Se puede hacer una analogía, se puede pensar que una clase es un plano de una casa, con un plano se pueden construir una o varias casas, así pues el plano es la clase y los objetos las casas construidas, que son diferentes puesto que yo puedo pintar de color rojo una casa y de color verde otra, así pues los objetos en Java son totalmente independientes.

La clase TextField

Pero hablemos más de la clase TextField. Esta clase ha sido creada por los desarrolladores de java. Sun Microsystems ha creado java con cientos de clases, listas para facilitarnos la vida a nosotros los programadores.

A todas estas clases diseñadas Sun las agrupa en la llamada API (Application programming Interface, Interfaz de programación de aplicaciones) cuando se instala el JDK se instala la API, cuando se instala NetBeans, automáticamente sabe la ubicación de la API, por eso nosotros simplemente arrastramos y soltamos el elemento TextField, ya esta direccionado por NetBeans.

Podemos ver la documentación de la API y observar en detalle como es la estructura de la clase TextField. En nuestro caso vamos a ver la documentación de la API desde el directorio de Sony Ericsson, después de todo se está trabajando con celulares de esta marca. La figura siguiente muestra la ruta exacta de la documentación de la API.

Esta ruta obviamente se crea cuando se instala el SonyEricsson SDK. Dando clic aquí  se puede ver el post de la instalación de este kit, por si te lo perdiste.

Al dar doble clic en el archivo index.htm se muestra la figura siguiente:


La API de Java es la totalidad de las clases, todas estas clases se dividen en paquetes (packages). Un paquete agrupa clases parecidas o que se relacionan, ahorita no me interesa hablar de los paquetes, me interesa hablar solamente de la clase TextField. 

Como se observa en la figura hay una sección llamada todas las clases (All Classes) justo ahí debe estar obviamente la clase TextField, podemos buscarla, esta por orden alfabético esa sección y damos clic en TextField, al hacerlo debe aparecer la documentación de esta clase como se observa en la figura siguiente:

En la documentación mostrada en la figura se observa con gran detalle la descripción de la clase TextField, ahí se indica con exactitud todos los detalles de la clase.

Estructura de la clase TextField

También en la documentación, más abajo en la página que se observa en la imagen, se pueden ver las tres grandes partes de que consta una clase:

  • Propiedades (FIELD)
  • Constructor 
  • Métodos (METHODS) 
Propiedades

Las propiedades pueden considerarse como los atributos de un objeto. La figura siguiente muestra las propiedades de la clase TextField.

Se resalta en un rectángulo la propiedad NUMERIC, si damos clic ahí nos da la descripción de esta propiedad con más detalle. 

Este atributo permite insertar únicamente datos numéricos dentro del TextField. Se puede crear un objeto TextField y si se asigna la propiedad NUMERIC, solo se podrán escribir números dentro de el, si quiero escribir letras no se podrá nunca. 

Constructor

Es utilizado para crear e inicializar un objeto. En este instante no nos interesan los detalles de cómo se hace usa el constructor de la clase TextField ¿Por qué?, la respuesta es sencilla, como ya se mencionó NetBeans crea automáticamente los objetos, este proceso automatizado crea el código Java para el constructor de la clase TextField, pero lo hace NetBeans yo no me preocupo por ello, cuando menos no hasta ahorita.

Metodos (Methods)

Los métodos representan acciones que puede realizar un objeto, la figura siguiente muestra algunos métodos de la clase TextField

Por ejemplo el método que se resalta en el recuadro negro, es llamado getString(). Ahí se ve la descripción (dando clic en el método se ven más detalles), este método es usado para obtener el contenido de los caracteres que se hayan escrito en el TextField.

Bueno, hasta aquí vamos a dejar este post, creo que fue mucha la información, espero me haya explicado, la próxima entrada vamos a realizar un ejemplo donde se haga uso de los atributos y métodos de la clase TextField, para ello vamos a utilizar poquito código java, si por fin vamos a usar código para poder hacer ejemplos un poquitín más complejos que simplemente crear interfaces de usuario.


3 comentarios:

  1. Master tu crees que puedes dar un ejemplo de hacer la biblia en javaME

    ResponderEliminar
  2. Hola si seria interesantisimo hacer la bilia en JavaME, seria un gran trabajo, pero no esta en mis planes hacer un ejemplo de ello, la razón es simple, lo que pides se puede realizar con list, stringitem y ese tema ya se vio en el blog ya no puedo repetir, hay muchas cosas por aprender, lo lamento mucho

    ResponderEliminar