miércoles, 19 de octubre de 2011

Declaración de clase: atributos, métodos, encapsulamiento


A partir de este momento, empezaremos a trabajar con el código en Java. Para esto primero habrá el bluej que previamente descargo en el link de la entrada “Palabras del autor”
Si no de todas maneras les vuelvo a dejar el link aca
http://www.megaupload.com/?d=LF9O9XXW

Al abrir el bluej debe ver una ventana muy similar a la siguiente, dele clic en proyect (proyecto), después dele clic en New Proyect (Nuevo proyecto) y elija un directorio donde se guardara el proyecto y a continuación y póngale un nombre, ejemplo “BJ1”

Ventana principal deBluej



Ahora vera que los botones New Class, Compile, y las diferentes flechas quedan habilitadas (de no ser así regrese un paso atrás), ahora también aparecerá en el espacio en blanco un dibujo de un bloc de notas en la parte superior izquierda. Si le da doble clic a él podrá empezar a escribir en él una descripción de sistema que hará

Si lo desea puede omitir la parte de poner una descripción del sistema ya que esto no es necesario para el sistema.

A continuación dele clic en New Class, le aparecerá un cuadro que le pedirá el nombre de la clase y el tipo, póngale el nombre de “asdf” (sin comillas) y seleccione el tipo class


Muy bien hemos creado nuestra primera clase en Java :), si nos damos cuenta se asemeja mucho al diagrama de clases que vimos en la primera parte, de ahí su importancia de entender lo más posible lo primero.

Muy bien ahora si le damos clic derecho a la clase “asdf” y de ahí selecciona Open editor nos llevara al código fuente de la clase, lo mismo pasa si le damos doble clic.

En este momento estaremos viendo el código fuente de la clase, si nos damos cuenta veremos que para declarar una clase en Java se usa la siguiente sintaxis:



public class asdf
{
}




Después de poner public class asdf Debe ir su la llave que abre la clase, la llave se cerrara cuando la clase termine, obviamente como esta clase no tiene nada más se procede a cerrarla (Imaginar que el resto del código no existe), recuerda que cada llave que abres debes cerrarla, si recuerdas esto podrás ahorrarte muchos dolores de cabeza, yo he sufrido por culpa de eso.

Muy bien ahora seleccione todo el código y bórrelo, después de borrar escriba la siguiente declaración de clase

public class MiClase
{
}



 
Proceda a darle clic al botón compile y cierre el editor del código fuente, y regrese a la pantalla principal del bluej, ¿Qué cambio importante puede notar?
Lo que paso es que la clase antes llamada “asdf” ahora se llama MiClase esto se debe a que desde la declaración de la clase la llamamos así.

Yo recomiendo borrar todo el código de una clase cuando sea creada para que así podamos practicar más.


IMPORTANTE

1.- Recuerda que al escribir el nombre de una clase siempre se empieza con mayúscula, y en caso que el nombre de la clase se igual o mayor a dos palabras se juntan las palabras siempre y cuando la siguiente palabra empiece con mayúscula ejemplo “MiClase”, o también puede escribir “Mi_clase”

Estas reglas no son de gran importancia ya que si se escribe “miclase” igual lo compila y trabaja. Solamente que lo anterior son una especie de convenio que los programadores han marcado para que sea más fácil entender el código, en especial cuando en un proyecto trabaja más de una persona.

2.- No pueden existir dos clases con el mismo nombre. Intente hacer otra clase con el mismo nombre y deberá marcarle un error (De no ser así revise porque, debe marcar error). Acá si no es convenio, si nos reglas que se deben seguir al pie de la letra.

3.- Al principio escribamos “public” esto lo explicaremos más tarde, mientras escriba así

Muy bien ahora cree varias clases, ejemplo Perro, Carro, Persona, etc. de preferencia hágalo como lo mostré en la parte de arriba, borre todo el código y escriba desde cero todo. Esto nos servirá para empezar a familiarizarnos con Java

Varias Clases creadas




Atributos

En este punto ya explicamos que es una clase y como se declara en Java , ahora pasare a explicar que son los atributos en una clase en java, para eso usaremos la clase “Carro” que hemos creado anteriormente, de no ser así créela, total ya sabe cómo crear una clase

** Una clase es una especia de molde para los objetos, define los atributos y los métodos de una serie de objetos.

Muy bien habrá el código fuente de la clase Carro y después escriba después de la llave lo siguiente:
private int modelo_carro;
private String nombre;
private int num_puertas;

El código completo debe quedar de la siguiente manera

public class Carro
{
private int modelo_carro;
private String nombre;
private int num_puertas;
}
Lo que hemos hecho es declarar los campos de una clase o también conocidos como los atributos, debemos recordar que los atributos son las características de un objeto, hablamos de características de un objeto y no de clases ya que debemos recordar que la clase solo es un molde con el que se crearan los objetos.




Muy bien ahora expliquemos lo que acabamos de escribir.
1.- Para declarar un campo en Java primero se escribe  primero si es privado o publica, escribiremos privada por que queremos que solo en esa clase se puedean usar esos campo, luego se escribe el tipo de dato, debemos de recordar que en Java solo existen dos tipo de datos (Primitivos y tipo Objeto), por lo pronto solo usaremos los primitivos. Los datos primitivos son aquellos que se guardan los datos directamente en la variable, ejemplo de datos primitivos:
int (valores entero)
float(números con decimales)
String (cadena de caracteres)
boolean (valor boleano con dos posibles respuestas)
etc.

(Puede investigar en internet el resto de tipo de datos primitivos, pero por lo pronto con los mostrados anteriormente trabajaremos)

2.-Se procede a escribir el nombre de la variable (acá se manejan los mismo acuerdos para poner nombre que en las clases)

3.- después del nombre se escribe un punto y coma; de no hacerlo al compilar nos marcara un error

Ahora declare más campos, con el fin de practicar la declaración de campos (ATRIBUTOS)

NOTA
1.- Puede darle un espacio después de cada llave con el fin de que el código sea más estético y sea más entendible (ver imagen)

2.- La declaración de campos no va adentro de ninguna llave si no afuera de la clase (ver imagen)

Métodos

Los métodos son las acciones que tomara el objeto de la clase, y este puede pedir un parámetro o no para funcionar.
Parámetro: información extra que necesita el método para trabajar

Ejemplo:
Imaginemos la clase perro, esta tiene el método llamado saber tamaño, pero también necesita saber cuántas veces va a ladrar (parámetro). Nos damos veces que él la cantidad de veces que va a ladrar es un parámetro, ya que es información extra que se necesita saber, y por lo tanto se necesita saber

La sintaxis para declarar un método con un parametro es la siguiente

Public void ladrar(int can_ladrar)
{
}

En el que caso que no se necesite saber el parámetro se escribe de la siguiente forma
Public void ladarar()
{
}

Obviamente abrimos y cerramos la llave por qué no tenía ninguna sentencia el método. Un método puede ser de dos formas de tipo return o de tipo void, el tipo return regresa un valor (un tipo de valor), mientras que void no regresa nada, en los siguiente temas vernos más de esto.

 
También es importante mencionar que existen dos tipos de métodos, de modificación y de acceso. Los de modificación como su nombre lo dicen modifican el estado de una variable, mientras que lo de acceso nos permiten el acceso a una variable (leer la variable)

NOTA:
No trata de programar el ejercicio anterior ya que no funcionara, programaremos ejercicios con métodos cuando veamos los constructores ya que estos van muy ligados a los métodos. De igual manera si no quedo muy claro el concepto no se preocupe, con que entiende que le método es solamente las acciones que tomara la clase es suficiente por el momento.

Por el momento solo haga Signaturas de los métodos, un momento ¿qué es una signatura de un método? La signatura del método es como el esqueleto o firma de un método
Ejemplo

publicStringt Mostrar_nombre()

Public void Impimir_detalles()

Intente hacer varias Signatura de métodos, en caso de que no quede muy claro no se preocupe, lo explicaremos más adelante.


Encapsulamiento

El encapsulamiento es el ocultamiento del estado, es decir, del dato miembro, de un objeto de manera que sólo se puede cambiar mediante las operaciones definidas para ese objeto.
Podemos decir que encapsular es nada más que ocultar o esconder a un objeto o a sus atributos con el fin de que este no sea modificado por accidente, pues solo ciertos métodos podrán modificarlo o tener acceso a ese objeto
A continuación mostraremos una parte de un código, y en base a eso explicaremos cómo funciona el encapsulamiento

public void Insertar_dinero(int aumento)
{
if(aumento>0)
{
saldo=saldo+aumento;
}
else
{
System.out.println(+ aumento + " No es un valor permitido, por favor ingrese un valor positivo");
}
}

Acá podemos observar que el método insertar dinero presenta un parámetro de tipo entero (int) y de nombre aumento, el aumento solo podrá ser modificada por este método y la variable solo podrá ser accesible en este método y no durante otro método
El encapsulamiento quedara más claro conforme el lector vaya haciendo los ejercicios ya que es más fácil aprenderlo con la práctica

(20 de Octubre de 2011) Bueno Hoy nos quedamos hasta acá, mañana seguiré poniendo información nueva, si les gusta o parece interesante, o incluso si creen que se debe corregir algo manden sus opiniones, después de todo yo igual soy un alumno que está en el proceso de aprendizaje

Estudiante de ISC Daniel ZVPL
 

No hay comentarios:

Publicar un comentario