17. Atributos, Metodos e Instancias

Para programar debemos saber que la "clase" (en nuestro caso se llama Ejemplo), es donde estan definidos los comportamientos de los tipos de objeto que reprentan esta y el codigo se divide en dos partes que son:

    Atributos: son las caracteristicas que tendra el objeto como un color, numeros o precios, altura, velocidad, etc... y estas normalmente se les atribuye mediante las variables.

    Metodos: son las funciones o acciones que implementan a los objetos de nuestra clase.

Bien estos Atributos y Metodos estan implementados dentro de una clase y no dentro del metodo "main", ejemplo de ello:

 

public class Ejemplo{

    int velocidad = 130;    // Atributo

    public static void acelera(){        // Metodo

        System.out.println("La moto acelera y se pone a ");

    }

    public static void main(String[ ]args){        // Metodo main

 

    }

}

 

Bien, si tu ejecutas ahora mismo el programa, logicamente no ocurrira absolutamente nada, no imprimira nada en pantalla, ¿por que?, porque el programa necesita el punto de partida que es el metodo "main", pero si en el metodo "main" no hay nada, pues no imprimira nada.

Ahora tenemos una "clase Ejemplo" que contiene su atributo y su metodo. Nosotros necesitamos ahora crear una Instancia en el metodo "main". ¿Como la creamos?, pues llamando a la "clase Ejemplo" de la siguiente forma:

 

Ejemplo ejem = new Ejemplo( );

 

Escribimos el nombre de la clase tal cual "Ejemplo", a continuacion la definimos con el nombre que nosotros queramos, en nuestro caso la llamaremos "ejem" y le decimos que es un nuevo (new) objeto llamado "Ejemplo". 

Con esto conseguimos una instancia de nuestra "clase Ejemplo" y con ello podemos llamar a todos sus atributos, metodos, etc...

Esto en el codigo quedaria asi:

 

public class Ejemplo{

    int velocidad = 130;    // Atributo

    public static void acelera(){        // Metodo

        System.out.println("La moto acelera y se pone a ");

    }

    public static void main(String[ ]args){        // Metodo main

        Ejemplo ejem = new Ejemplo( );        // Instancia

    }

}

 

Una vez tengamos la instancia creada en nuestro "main", pasariamos a llamar a nuestros atributos y metodos:

 

public class Ejemplo{

    int velocidad = 130;    // Atributo

    public static void acelera(){        // Metodo

        System.out.println("La moto acelera y se pone a ");

    }

    public static void main(String[ ]args){        // Metodo main

        Ejemplo ejem = new Ejemplo( );        // Instancia

        acelera( );    // Metodo de la clase

        System.out.println( ejem.velocidad );        // Desde la Instancia llamo al atributo velocidad

    }

} 

 

Las instancias, puedes hacer las que quieras y no solo desde una "clase" al "main", sino tambien entre "clases". Imaginate que tienes dos clases, una se llama Coche y otra se llama Moto y luego tienes otra clase que se llama Principal y esta contiene el metodo "main", fijate en el esquema:

 

public class Coche{

 

}

.......................................................................................................

public class Moto{

 

}

.......................................................................................................

public class Principal{

    public static void main(String[ ]args){

 

    }

}

 

Ya las tenemos creadas, ahora en la clase Coche, vamos a poner atributos y en Moto tambien:

 

public class Coche{

    int velocidadLim = 180;

    int velocidadMax = 150;

    String color = "Verde";

}

.......................................................................................................

public class Moto{

    int velocidadMax = 130;

    String color = "Azul";

    Coche co = new Coche( );        // Instancia de Coche

    int limite = co.velocidadLim;        // A la variable "limite" le pongo el valor llamando desde la instancia de Coche el valor de "velocidadLim"

}

.......................................................................................................

public class Principal{

    public static void main(String[ ]args){

         // Aqui mediante las instancias puedo llamar a las clases que yo quiera

    }

}

 

¿Que no sabes como crear una nueva clase?, pues mismamente como cuando creaste por primera vez la "clase Ejemplo", en tu proyecto, en la carpeta "src", click derecho de raton y nueva clase.

Una aplicacion, normalmente no se ciñe a una sola clase y esto deberas ir implementandolo en tu programacion.