En el artĆculo anterior, vimos lo que era la programaciĆ³n orientada a objetos desde un punto de vista neutral, sin entrar en detalles de implementaciĆ³n en un lenguaje. En esta parte de la serie, veremos cĆ³mo aplica la POO en el lenguaje Java. Para ello, veremos un ejemplo real. Pensemos en un automĆ³vil (el que nos guste). Ahora pensemos en algunas caracterĆsticas; un auto tiene una serie de placa, un nĆŗmero de puertas, un nĆŗmero de neumĆ”ticos, un color, un aƱo de fabricaciĆ³n y si tiene un mecanismo de tracciĆ³n. Bien, si lo representamos en Java, lo que tenemos ahora se verĆa asĆ:
La forma de utilizar es una clase es creando objetos a partir de esa clase. Como dijimos en el artĆculo anterior una clase es una plantilla de la cual se crearĆ”n objetos. La forma de crear objetos en Java es por medio del operador new el cual indica que se crearĆ” una nueva instancia de la clase que se describe a continuaciĆ³n. Para crear un Lamborghini, harĆamos:
Una vez que hemos instanciado la clase Automovil y por ende obtenido un objeto de tipo Automovil, podemos cambiar sus atributos y jugar con sus mĆ©todos. Por ejemplo vamos a ponerle una serie de placa ABC123Z, un color rojo, un nĆŗmero de puertas 2, un nĆŗmero de ruedas 4, un aƱo 2015, y sin tracciĆ³n:
Para probar el funcionamiento de nuestro cĆ³digo, solo debemos de crear un mĆ©todo main. El mĆ©todo main es un mĆ©todo Ćŗnico y especial en Java. Este mĆ©todo nos provee un punto de inicio y entrada de un programa, por ende, para ejecutar un programa debemos de proveer un mĆ©todo main.
Como ves, crear un objeto y personalizarlo es muy sencillo, solo basta un punto y acceder al atributo. Pero esto, no es nada recomendable y en el prĆ³ximo artĆculo veremos por quĆ©.
!Nos vemos!.
public class Automovil { String seriePlaca; int numeroPuertas; int numeroRuedas; String color; String anyo; boolean traccion; }Ya tenemos los atributos de nuestra clase. Pero falta agregarle comportamiento, asĆ que pensemos en las acciones de un auto. Un auto acelera y frena, bĆ”sicamente es lo que hace. Por lo tanto, nuestra clase quedarĆa asĆ:
public class Automovil { String seriePlaca; int numeroPuertas; int numeroRuedas; String color; String anyo; boolean traccion; public void acelerar() { System.out.println("¡Acelerando!"); } public void frenar() { System.out.println("Frenando..."); } public void imprimirInfo() { System.out.println("Placa: " + seriePlaca + "\nN° puertas: " + numeroPuertas + "\nN° ruedas: " + numeroRuedas + "\nColor: " + color + "\nAƱo: " + anyo + "\nTracciĆ³n: " + traccion); } }Como vemos, acelerar(), frenar() e imprimirInfo() son los comportamientos del auto, que en Java se denominan mĆ©todos. El mĆ©todo imprimirInfo solo imprimirĆ” los atributos del auto creado. Ahora viene la pregunta:
¿CĆ³mo utilizar esa clase?
La forma de utilizar es una clase es creando objetos a partir de esa clase. Como dijimos en el artĆculo anterior una clase es una plantilla de la cual se crearĆ”n objetos. La forma de crear objetos en Java es por medio del operador new el cual indica que se crearĆ” una nueva instancia de la clase que se describe a continuaciĆ³n. Para crear un Lamborghini, harĆamos:
Automovil lamborghini = new Automovil();
Una vez que hemos instanciado la clase Automovil y por ende obtenido un objeto de tipo Automovil, podemos cambiar sus atributos y jugar con sus mĆ©todos. Por ejemplo vamos a ponerle una serie de placa ABC123Z, un color rojo, un nĆŗmero de puertas 2, un nĆŗmero de ruedas 4, un aƱo 2015, y sin tracciĆ³n:
Automovil lamborghini = new Automovil(); lamborghini.seriePlaca = "ABC123Z"; lamborghini.numeroPuertas = 2; lamborghini.numeroRuedas = 2; lamborghini.color = "rojo"; lamborghini.anyo = "2015"; lamborghini.traccion = false;Ya tenemos un Lamborghini muy cool, ahora hay que hacerlo acelerar, imprimir su informaciĆ³n y finalmente frenar:
lamborghini.acelerar(); lamborghini.imprimirInfo(); lamborghini.frenar();Las llamadas a los mƩtodos de un objeto se realizan mediante el operador punto (.), el cual denota todas las posesiones (atributos y mƩtodos) de ese objeto.
Poniendo todo junto
Para probar el funcionamiento de nuestro cĆ³digo, solo debemos de crear un mĆ©todo main. El mĆ©todo main es un mĆ©todo Ćŗnico y especial en Java. Este mĆ©todo nos provee un punto de inicio y entrada de un programa, por ende, para ejecutar un programa debemos de proveer un mĆ©todo main.
public class Prueba { public static void main(String[] args) { Automovil lamborghini = new Automovil(); lamborghini.seriePlaca = "ABC123Z"; lamborghini.numeroPuertas = 2; lamborghini.numeroRuedas = 2; lamborghini.color = "rojo"; lamborghini.anyo = "2015"; lamborghini.traccion = false; lamborghini.acelerar(); lamborghini.imprimirInfo(); lamborghini.frenar(); } }Si compilamos y ejecutamos obtenemos la siguiente salida:
¡Acelerando!
Placa: ABC123Z
N° puertas: 2
N° ruedas: 2
Color: rojo
AƱo: 2015
TracciĆ³n: false
Frenando...
Como ves, crear un objeto y personalizarlo es muy sencillo, solo basta un punto y acceder al atributo. Pero esto, no es nada recomendable y en el prĆ³ximo artĆculo veremos por quĆ©.
!Nos vemos!.