Objetos y clases en Java

Objetos y clases en Java

Vamos a crear un programa que utilice objetos y clases en Java. El siguiente programa creará una clase llamada Tortuga, a la que le asignaremos un nombre y una posición x,y. Además, interactuaremos con ella mediante la creación de un objeto a través del cual le preguntaremos su ubicación.

objetos-y-clases-en-java

Aprende mas sobre objetos y clases en Java

Creación de un proyecto en NetBeans

Abrimos NetBeans

Menú Archivo

Opción: Proyecto Nuevo…

proyecto-nuevo-java

Seleccionamos Java->Java Application

Asignamos un nombre al proyecto: Puede ser cualquiera, nosotros le vamos a llamar Tuga.

 

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

Creamos una clase dentro de nuestro proyecto.

Archivo->Archivo Nuevo…

java-class

Seleccionamos Java y Java Class

Le asignamos un nombre a la clase, en nuestro ejemplo será: Tortuga

Nuestra clase contendrá lo siguiente:

private String nombre;
private int posx, posy;

public void establecerNombre(String nombre){
this.nombre = nombre;
}

public void mostrarNombre(){
System.out.printf("Mi nombre es %s", nombre);
}

public void mostrarPosicion(){
System.out.printf("Me encuentro en %d, %d", posx, posy);
}

public void avanzar(int n){
posx=posx+n;
}

public Tortuga(int x, int y ){
nombre = "Sin nombre";
posx=x;
posy=y;
}

 

Atributos

Una clase tiene atributos y operaciones. Los atributos son los datos con los que trabaja una clase (Deitel, 2004). Se dice que los atributos (datos), representan el estado o condición de un objeto. En nuestro ejemplo, hemos seleccionado como atributos de nuestra tortuga, su nombre y su ubicación x,y.

 

private String nombre;
private int posx, posy;

 

Encapsulamiento

Las clases normalmente ocultan ciertos detalles. Esto se conoce como encapsulamiento. Es por eso que hemos declarado los atributos nombre y posx, posy, como privados.

private String nombre;
private int posx, posy;

 

 

Usar encapsulamiento en nuestras clases es parte de la ingeniería de software.

Métodos

En la terminología de Programación Orientada a Objetos, se utiliza el término Métodos. En otros lenguajes de programación, éstos bloques de código son conocidos como funciones o procedimientos. Los métodos nos permiten dividir un programa en módulos.

Nuestra clase cuenta con los siguientes métodos: establecerNombre, mostrarNombre, mostrarPosicion, y avanzar.

public void establecerNombre(String nombre){
this.nombre = nombre;
}

public void mostrarNombre(){
System.out.printf("Mi nombre es %s", nombre);
}

public void mostrarPosicion(){
System.out.printf("Me encuentro en %d, %d", posx, posy);
}

public void avanzar(int n){
posx=posx+n;
}

 

El método establecerNombre, es de tipo void, quiere decir que no devuelve ningún dato cuando el método es invocado. Se observa que dentro de paréntesis se menciona un dato (String nombre), éste dato se le conoce como parámetro, e indica que cuando el método sea invocado, deberá asignársele un valor de tipo String o cadena de caracteres.

En ésta línea:        this.nombre = nombre;

this.nombre se refiere al atributo nombre de la clase. (private String nombre)

nombre se refiere al parámetro nombre

La línea se lee: el atributo nombre recibe el valor del parámetro nombre.

El método avanzar también recibe un parámetro (int n), que indica el número de pasos que la tortuga dará. Es por eso que esa cantidad es sumada al valor que ya tiene el atributo posx.

Los métodos mostrarNombre y mostrarPosicion, imprimen una línea de texto con el nombre y posición x,y de la tortuga, respectivamente.

 

Instanciación de una clase

Observemos el proyecto que hemos creado. Contiene 2 archivos: uno llamado Tortuga.java (la clase que creamos nosotros), y otro que se llama Tuga.java (fue creado cuando se generó el proyecto).

proyectos-java

Note que el archivo Tuga.java tiene en su icono una pequeña flecha verde. Eso indica que ese es el archivo que contiene el método main o principal de la aplicación, el método que hace que la aplicación corra o se ejecute. Si abrimos el archivo y vemos nuestro método main, contiene lo siguiente:

public static void main(String[] args) {

}

 

No contiene código, por lo que si ejecutáramos el programa no haría nada. Vamos a crear un objeto a partir de la clase Tortuga que ya tenemos.

public static void main(String[] args) {
Tortuga mitortuga = new Tortuga();
mitortuga.establecerNombre("Tota");
mitortuga.mostrarNombre();
mitortuga.mostrarPosicion();
mitortuga.avanzar(5);
mitortuga.mostrarPosicion();}

 

La línea

Tortuga mitortuga = new Tortuga();

Crea un objeto llamado mitortuga a partir de la clase Tortuga. A esto se le llama Instanciación de una clase (mitortuga es una instancia de Tortuga).

Una vez hecho esto podemos utilizar el objeto utilizando todos los miembros públicos que la clase posea. (¿Qué es un objeto? Apréndelo aquí).

Referencia al objeto actual

Ya podemos darle un nombre a mitortuga

mitortuga.establecerNombre(“Tota”);

Pedirle que nos muestre su nombre

mitortuga.mostrarNombre();

Solicitarle que muestre su posición

mitortuga.mostrarPosicion();

Y pedirle que avance 5 posiciones

mitortuga.avanzar(5);

mitortuga.mostrarPosicion();

 

La salida de este sencillo programa será la siguiente

clases-y-objetos-en-java

Referencias

  1. Deitel(2004). Cómo programar en Java. Pearson Educación. México.
¿Qué te pareció este artículo?
  • Poco informativo 
  • No era lo que buscaba 
  • Regular 
  • Interesante 
  • Excelente 
(Visto 1.842 veces)
Facebooktwitterlinkedinmail

Tu comentario

opiniones

Comments

  • Constructores: declaración, uso y aplicaciones - | Dic 16,2016

    […] el tema anterior (Objetos y clases en Java), creamos e instanciamos una clase llamada Tortuga que tenía como atributos el nombre y la […]