Saltar al contenido

POO. Creación de objetos personalizados

Anteriormente en la introducción a la POO, habíamos hablado de lo que es un objeto en java. Además también comentamos que los objetos en java tenían unas propiedades y unas características.

Date cuenta que en java, todo es considerado un objeto. También habíamos hablado de algunas clases que predefinidas de java y que mostramos a continuación.

Todas las clases anteriores, son clases que están predefinidas en el lenguaje de POO java y por lo tanto, podemos decir que son objetos que incorpora el propio lenguaje de programación.

Índice de contenidos

    Clases definidas por el usuario en la POO.

    Sin dejar de lado lo anterior, en java también podemos crear objetos personalizados como puede ser una silla, una mesa, un coche, una persona, etc. Esto es lo que llamamos objetos definidos por el usuario.

    Estos objetos, se definirán dentro de una clase (un archivo «.java«) que no contendrá el método main, sino que solo tendrá las propiedades (variables o atributos) y las características de dicho objeto (métodos o funciones).

    Vamos a ver un ejemplo de un objeto Persona creado por el usuario.

    En este caso, crearemos un paquete en nuestro proyecto que llamaremos objetos. Este paquete contendrá una clase llamada Principal.java, con el método main, y otra clase llamada persona.java.

    Ejemplo de creación de un objeto persona creado por el usuario.

    Lo primero que haremos será crear la clase Persona y nos quedará de la siguiente manera.

    package objetos;
    
    public class Persona {
    	// Aquí van las propiedades y
    	// características del objeto persona
    }
    

    Fijaos, que ahora mismo sólo hemos creado una clase llamada Persona. Sin embargo, en este momento, ya podemos crear tantos objetos de tipo persona como queramos. Esto lo haremos desde la clase que contiene el método main y con la palabra reservada new. Veamos un ejemplo.

    Creando objetos de tipo persona desde el método main en la POO.

    package objetos;
    
    public class Principal {
    
    	public static void main(String[] args) {
    		
    		Persona primeraPersona = new Persona();
    		Persona segundaPersona = new Persona();
    		Persona terceraPersona = new Persona();
    	}
    
    }
    

    Como ves en este ejemplo, hemos creado tres personas diferentes. Realmente, en una variable llamada primeraPerona, hemos almacenado un objeto de tipo Persona.

    Al igual que declaramos una variable de tipo String, int, boolean, etc, una vez que construimos una clase, también podemos declarar objetos de esa clase, en este caso, objetos de tipo Persona.

    ¿Pero no hay que declarar características y propiedades para definir el objeto?

    Y si te estás haciendo esta pregunta, tienes razón. Para que un objeto tenga funcionalidad, debe contener unas propiedades y unas características. Sin embargo, nosotros ya podemos crear objetos de tipo persona, ya que tenemos la clase creada, es decir, tenemos el molde del objeto.

    Creando las propiedades de un objeto en POO.

    Al crear una clase en java, estamos creando un objeto personalizado. En este caso de tipo persona. Hasta el momento, como hemos dicho, tenemos el molde de una persona y podemos crear objetos de esa clase aunque no tienen ninguna funcionalidad. Sin embargo, una vez que ya tenemos el molde, podemos definir las propiedades que nosotros queramos.

    Por ejemplo una persona, tiene un nombre, una edad, un DNI, etc.

    ¿Pero, cómo se incorporan esas propiedades a nuestro objeto?

    Las propiedades o los atributos del objeto no son más que variables que contiene la el objeto (la clase). Vamos a ver como quedaría entonces nuestro objeto si le agregamos una serie de propiedades.

    package objetos;
    
    public class Persona {
    	
    	// Propiedades o atributos del objeto Persona
    	
    	private String dni;
    	private String nombre;
    	private int edad;
    }
    

    Ahora mismo nuestro objeto ya tiene unas propiedades, sin embargo estas no poseen ningún valor. Para poder darles un valor, necesitamos crear una característica o un método que construya el objeto. Esto lo podemos hacer de varias formas a través de lo que llamamos métodos constructores. Esto lo veremos en el siguiente artículo.