You are on page 1of 4

Elementos básicos de Java

2 de octubre de 2010

Declaración de clases, atributos y métodos.


El lenguaje Java es orientado a objetos, por lo tanto, la estructura básica del código fuente de un programa
es una serie de descripciones de objetos o clases. La declaración de una clase en Java se hace de la siguiente
manera:
c l a s s Objeto {
/ / Dentro se d e f i n e n l o s a t r i b u t o s y l o s métodos .
}
La declaración de atributos y métodos en Java es similar a la de variables y funciones en el lenguaje C
respectivamente. Por ejemplo, si tenemos un objeto Persona con un atributo Edad y un método getEdad(), la
declaración de la clase que lo describe sería así:
class Persona {
p r i v a t e i n t edad ; / / El a t r i b u t o

public i n t getEdad ( ) {
r e t u r n Edad ; / / E l método
}
}
Nótese que antes de cada atributo se coloca la palabra private, y antes de cada método la palabra public: un
par de clases más adelante se explicará que significa esto.
El código fuente de un programa en Java se divide en varios archivos, una clase por archivo. El archivo
debe llamarse igual que la clase; por ejemplo, para la clase Persona, el archivo se llamaría Persona.java.
Se siguen ciertas convenciones para nombrar a las clases, atributos y métodos. El nombre de una clase es
una palabra en minúsculas que comienza con una letra mayúscula (ejemplos: Bicicleta, Disco, Computadora),
el de los atributos y los métodos son palabras en minúsculas, sustantivos y verbos respectivamente (ejemplos:
atributos disponibilidad y precio; métodos obtener() e imprimir() ). Si el nombre de una clase, atributo o método
está compuesto por dos palabras, después de la primera cada palabra inicia con mayúscula (ejemplos: clase
BicicletaMontaña, atributo tiempoAntiguedad, método imprimirLista(), clase CuboDeRubik).

Declaración del método main()


Al igual que en lenguaje C, en Java la ejecución comienza en un método que se llama main; este método debe
estar unicamente en una de las clases de las que componen todo el programa. El método debe estar declarado
de la siguiente manera:
p u b l i c c l a s s O b j e t o { / / N o t e que a n t e s de c l a s s va e l m o d i f i c a d o r p u b l i c

/ / Así t i e n e que d e c l a r a r s e d i c h o método , l o s m o d i f i c a d o r e s


/ / los t i e n e que l l e v a r o b l i g a t o r i a m e n t e
public s t a t i c v o i d main ( S t r i n g [ ] a r g s ) {
// C o n t e n i d o d e l método main
}
}

1
Instanciación de objetos
Al igual que con las estructuras en C, hasta el momento de la definición de una clase no se ha declarado
ningún objeto de esa clase. Para hacer uso del objeto hay que instanciarlo, instanciar se refiere a colocar en la
memoria al objeto. Para ello se hace uso de un método que se llama constructor, y que por defecto todas las
clases tienen.
En el caso de la clase Objeto, si queremos instanciar un objeto de esa clase, hacemos:
O b j e t o x = new O b j e t o ( ) ;
new Objeto() es el constructor de la clase Objeto, cada constructor se llama igual que la clase a la
que pertenece (ejemplos: el constructor de la clase Computadora es new Computadora(); el constructor
de la clase Lapiz es new Lapiz()). x es una referencia a un objeto de la clase Objeto; es como si fuera un
apuntador a Objeto.
La referencia contiene la dirección de memoria en donde se encuentra un determinado objeto. Hasta el
momento de declarar una referencia a un objeto de cierta clase, el objeto no ha sido instanciado; para ello se
requiere invocar al constructor de su clase. Las referencias puede apuntar a ningún objeto, en ese caso se usa la
palabra reservada null que indica que apunta a ninguna parte. Dos o más referencias pueden apuntar hacia el
mismo objeto.
Objeto x ; / / Dos r e f e r e n c i a s , h a s t a e l momento no s e ha i n s t a n c i a d o
Objeto y ; / / ningún o b j e t o .

x = new O b j e t o ( ) ; / / p o r medio d e l c o n s t r u c t o r , s e i n s t a n c i a un o b j e t o
/ / y se asigna a la r e f e r e n c i a x

y = x ; / / Se a s i g n a l a d i r e c c i ó n d e l o b j e t o en x a l a r e f e r e n c i a y
/ / a h o r a x y y r e f e r e n c i a n e l mismo o b j e t o

y = new O b j e t o ( ) ; / / Cuando queramos podemos i n s t a n c i a r o t r o o b j e t o


x = null ; / / o h a c e r que una l a s r e f e r e n c i a s no a p u n t e a
/ / ningún o b j e t o
Supongamos que instanciamos un objeto, se lo asignamos a una referencia y por último asignamos a esa
referencia otro objeto: el primer objeto estaría en memoria y ya no sería posible acceder a su contenido, ya
que ninguna referencia apunta hacia él. ¿Qué sucederá con ese objeto? La máquina virtual de Java tiene una
subrutina denominada recolector de basura que elimina de la memoria los objetos desreferenciados. Esta rutina
es periódica, pero uno puede forzar su invocación mediante la instrucción System.gc().

Acceso a atributos y métodos.


Una vez instanciado un objeto de cierta clase, al igual que en las estructuras en C, se puede acceder a sus
atributos y métodos de la siguiente manera: referencia.atributo o referencia.método.
P e r s o n a alumno ; / / R e f e r e n c i a a un o b j e t o de l a c l a s e p e r s o n a
alumno = new P e r s o n a ( ) ; / / I n s t a n c i a c i ó n

alumno . e d a d = 2 7 ; / / Accedemos a un a t r i b u t o de e s t e o b j e t o P e r s o n a

int i ;
i = alumno . g e t E d a d ( ) ; / / Accedemos a un método de e s t e o b j e t o
/ / Persona
Se recomienda no acceder de manera directa a los atributos de un objeto, sino a través de sus métodos. Ésto
tiene que ver con la propiedad de encapsulación: los datos dentro de un objeto tienen que estar ocultos del
exterior, la única manera para acceder a ellos tiene que ser a través de los métodos. Esta práctica ayuda a que el
código sea más modular, y cuando se desee implementar una clase de manera distinta, estos cambios no lleven
a reescribir todo el código.

2
Por convención, se agregan dos métodos por cada atributo que se desee modificar en el objeto: set y get. set
sirve para asignar un valor al atributo, get para obtener su valor. La clase Persona quedaría como sigue:
class Persona {
p r i v a t e i n t edad ; / / El a t r i b u t o

public i n t getEdad ( ) {
return edad ; / / E l método g e t p a r a e l a t r i b u t o edad
} / / O b t i e n e l a edad

p u b l i c v o i d s e t E d a d ( i n t x ) { / / E l método s e t p a r a e l a t r i b u t o edad
edad = x ; / / A s i g n a l a edad
}
}
El código de ejemplo anterior quedaría como sigue:
P e r s o n a alumno = new P e r s o n a ( ) ; // Instanciación

alumno . s e t E d a d ( 2 7 ) ; / / A s i g n a m o s un v a l o r a l a t r i b u t o edad de
/ / persona
int i ;
i = alumno . g e t E d a d ( ) ; / / Obtenemos e l v a l o r de l a edad
De esta manera podemos acceder al atributo edad de los objetos de la clase Persona: a través de sus métodos
set y get.

Compilación de un programa en Java


Para programar en Java, es necesario ir a una página de descargas dentro el sitio de Sun Microsystems1 y
descargar el Java Developer Kit (JDK). Este paquete incluye las librerías estandar de Java y el Java Runtime
Environment (JRE), que es la máquina virtual. Seleccionen la versión que corresponda a su sistema operativo.
En el caso de Linux, varias distribuciones tienen en sus repositorios este paquete, así que solo hace falta que
abran su manejador de repositorios y desde allí busquen el JDK.
JDK instala dos comandos de consola, java y javac: el primero es la máquina virtual, el segundo es el
compilador. Después de instalar el JDK, en Linux y MacOS no es necesario hacer otra configuración adicional;
en Windows si es necesario configurar en el sistema la localización del compilador.
En el explorador de archivos hay que buscar la ubicación de la instalación de Java. Usualmente dentro
la carpeta Archivos de programas se encuentra dicha instalación. Dentro de esa carpeta hay que buscar una
llamada bin; después de encontrarla, hay que copiar la ruta de esa carpeta (ejemplo: C:\Archivos de
programa\java123_45\bin).
En el explorador sobre Mi PC hacemos click con el botón derecho, y en el menú contextual seleccionamos
Propiedades: aparece la ventana de la figura 1a. En la pestaña Opciones avanzadas de dicha ventana hacemos
click sobre el botón Variables de entorno. En la segunda ventana que aparece (figura 1b), buscamos en la lista
de abajo una variable que se llama Path; hacemos click sobre ella y luego presionamos el botón Modificar.
Por último, en el cuadro de dialogo que aparece (figura 1c) agregamos al final de la linea un punto y coma
(;) y después la ruta de la instalación de Java. (ejemplo: [lo que vaya antes];C:\Archivos de
programa\java123_45\bin). Después le damos click en aceptar a todo. Hay que tener cuidado con este
paso, todo lo que esté previamente en la variable Path no debe ser modificado, unicamente hay que agregar la
ruta de la instalación.
Una vez instalado el JDK, para compilar un programa, hay que abrir una ventana de consolo o de símbolo de
sistema; en dicha interfaz hay que cambiarse a la carpeta en donde están los archivos del código del programa.
Para compilar hay que ejecutar:

javac lista de archivos


1 http://java.sun.com/javase/downloads/index.jsp

3
(a) Propiedades del sistema (b) Variables de entorno

(c) Modificar variables de entorno

Figura 1

Ejemplo, supongamos que tenemos tres archivos, los compilamos de la siguiente manera:

javac Biblioteca.java Libro.java Persona.java

Después de ejecutar esta instrucción en la carpeta aparecen unos archivos .class: éstos son las clases compi-
ladas. Para ejecutar el programa, hay que ejecutar la siguiente instrucción:

java -classpath . nombre de la clase que contiene al método main()

Supongamos que Persona es la clase que contiene a main, entonces ejecutariamos el programa así:

java -classpath . Persona

You might also like