Cómo usar clases en Java

Clases en Java

Una de las características que hacen que Java sea tan poderoso es su estructura orientada a objetos. Esto significa que Java usa clases y objetos para crear código más escalable, modular y organizado. Sin embargo, este puede ser un concepto complejo para llamar la atención como nuevo desarrollador. Entonces, en esta publicación, veremos cómo usar clases en Java.

Lea también: Curso para principiantes de Java: una guía completa y gratuita sobre los conceptos básicos de Java

¿Qué son las clases en Java?

Si no está familiarizado con el concepto de programación orientada a objetos, este es el mejor lugar para comenzar. Si ya sabe qué es una clase y solo quiere aprender la sintaxis de Java, puede omitir esta sección.

Lea también: ¿Qué es la Programación Orientada a Objetos?

Entonces, ¿qué es una clase? Una clase es una pieza de código que construye un objeto. Un objeto es una “cosa” conceptual que existe puramente en términos de los datos que la describen. Los objetos tienen propiedades (llamadas variables) y funciones (llamadas métodos). Esto es exactamente lo mismo que un objeto en el mundo real: un perro, por ejemplo, tiene propiedades (pelaje marrón, cuatro patas, 30 cm de altura) y funciones (ladrar, dormir, rodar, hacer caca).

La única diferencia entre un objeto en el mundo real y un objeto en código es que el objeto de código necesita un cuerpo físico.

Cómo invertir una cadena en Python

Adam Sinicki / Autoridad de Android

Por ejemplo, un villano en un juego de computadora podría muy bien ser un objeto. Este villano tiene variables (velocidad de movimiento, salud, sprite) y tiene métodos (disparar, mover a la izquierda, mover a la derecha, explotar). Ese malo “existe” en el código independientemente de si podemos verlo o no en la pantalla. Así que es un objeto de datos.

Instancias de objetos

La clase es la pieza de código que crea el objeto de datos. Nuestra clase “BadGuy”, por lo tanto, se usa para construir chicos malos. Pero esa es la siguiente distinción importante que hacer: el código BadGuy no verifica un separar chico malo. Más bien, le dice a la computadora que asigne los datos que representar un villano. Y podemos ejecutar ese código varias veces para crear más villanos.

Hay una clase Goomba que puede crear tantos Goombas como sea necesario en cualquier momento.

Entonces, en Super Mario, es poco probable que haya un código separado para cada Goomba en el juego. En cambio, probablemente haya una Goomba clase que puede crear tantos Goombas como sea necesario en un momento dado. Esto hace que el código sea más eficiente.

La metáfora que se usa a menudo aquí es decir que las clases en Java son “proyectos”, mientras que los objetos son ejemplos individuales de ese producto.

Y llamamos a cada producto creado por una clase dada un ejemplo de ese objeto.

Cómo usar clases en Java

Entonces, con todo eso en mente, ¿cómo haces para usar clases en Java?

Aquí hay una clase “BadGuy” muy simple que asigna valores a variables como “salud” y le da la oportunidad de dispararnos:

Código

class BadGuy{

    static int speed = 3;
    static int health = 5;
    static int xPosition = 20;
    static int yPosition = 100;

    public static void shoot() {
      System.out.println("Pew pew!");
    }
 
}

Ahora podemos invocar nuestra clase BadGuy desde nuestro código “Principal” (que es una clase en sí misma) simplemente diciendo:

Código

class Main {
  public static void main(String[] args) {
    BadGuy.shoot();
  }

}

Entonces, ¿qué está pasando aquí? Primero creamos nuestra clase escribiendo “clase” seguido del nombre de nuestra clase. En Java, se considera una buena práctica usar mayúsculas y minúsculas al elegir nombres de clase con la primera palabra en mayúscula. Camel case simplemente significa eliminar todos los espacios y poner cada palabra en mayúscula. Entonces: “BadGuy”, no “Bad_Guy” o “badguy”. Esto es opcional pero ayuda a que el código sea legible, especialmente si alguien más está trabajando en él.

Luego creamos variables estáticas globales, seguidas de un método estático público llamado “disparar” que dibujará “¡Pew pew!” en la pantalla.

La palabra “público” significa que se puede acceder a un método desde fuera de una clase. Esto significa que podemos llamar a ese método desde nuestra clase principal, pero tenemos que decirle a Java dónde buscar. Por eso decimos “BadGuy.shoot ();”.

Tenga en cuenta que muchas declaraciones en Java también usan puntos de esta manera (como System.out.println). Esto se debe a que las clases en Java son absolutamente críticas para su funcionamiento. ¡Muchas de las instrucciones que usa regularmente son en realidad métodos que pertenecen a clases integradas!

Creación de instancias de objetos

La razón por la que usamos la palabra clave “estática” cuando nos referimos a variables y métodos es porque no queremos vincular nuestra clase a ninguna clase específica. ejemplo del objeto En este momento, nuestra clase BadGuy no puede crear múltiples villanos, cada uno con diferentes valores para su salud y velocidad.

Para cambiar esto, debemos eliminar la palabra clave estática y crear una o más instancias del objeto:

Código

class Main {
  public static void main(String[] args) {
    BadGuy badGuy1 = new BadGuy();
    BadGuy badGuy2 = new BadGuy();
    System.out.println(Integer.toString(badGuy1.health));
    System.out.println(Integer.toString(badGuy2.health));
  }

}

class BadGuy{

    int speed = 3;
    int health = 5;
    int xPosition = 20;
    int yPosition = 100;

    public static void shoot() {
      System.out.println("Pew pew!");
    }
    
}

Este código crea dos instancias de BadGuy y por lo tanto puede mostrarnos el estado de salud de cada uno de ellos. Por lo tanto, podemos influir en la salud de los justos. una de nuestros villanos así:

Código

class Main {
  public static void main(String[] args) {
    BadGuy badGuy1 = new BadGuy();
    BadGuy badGuy2 = new BadGuy();
    badGuy2.getHit();
    System.out.println(Integer.toString(badGuy1.health));
    System.out.println(Integer.toString(badGuy2.health));
  }

}

class BadGuy{

    int speed = 3;
    int health = 5;
    int xPosition = 20;
    int yPosition = 100;

    public static void shoot() {
      System.out.println("Pew pew!");
    }

    public void getHit() {
      health--;
    }
    
}

Tenga en cuenta que el método “getHit” no incluye la palabra clave “estática”. Esto significa que el método actuará sobre el ejemplo del objeto para que solo se vea afectada la salud de un villano en particular. Por lo tanto, no podemos decir: BadGuy.getHit (); sin construir primero un nuevo objeto.

¡Esperemos que ahora esto comience a tener sentido y pueda ver cómo podríamos usar clases en Java para crear muchas instancias del mismo “objeto” que pueden ejecutarse al mismo tiempo!

Cómo usar constructores en Java

Lo último que necesita aprender sobre el uso de clases en Java es el rol del constructor.

Un constructor es un tipo especial de método en una clase que se usa para “construir” esa clase definiendo sus valores tan pronto como se crea. Es posible que desee, por ejemplo, crear varios villanos, cada uno con diferentes cantidades de fuerza para empezar. Alternativamente, si estuviera creando una base de datos de clientes, podría usarla para crear nuevas entradas donde cada una tuviera un nombre, número de teléfono, etc.

El método constructor debe tener el mismo nombre que la clase. Por lo tanto, necesitamos pasar argumentos (variables) que podamos usar para definir los valores que queremos establecer durante la inicialización. Por lo tanto, debemos asegurarnos de agregar esas variables entre paréntesis cuando creamos nuevas instancias de los objetos.

El código final se ve así:

Código

class Main {
  public static void main(String[] args) {
    BadGuy badGuy1 = new BadGuy(3, 5, 20, 100);
    BadGuy badGuy2 = new BadGuy(3, 27, 20, 100);
    badGuy2.getHit();
    System.out.println(Integer.toString(badGuy1.health));
    System.out.println(Integer.toString(badGuy2.health));
  }

}

class BadGuy{
  
  public int speed;
  public int health;
  public int xPosition;
  public int yPosition;
  
    public BadGuy(int badGuySpeed, int badGuyHealth, int badGuyxPosition, int badGuyyPosition) {
      speed = badGuySpeed;
      health = badGuyHealth;
      xPosition = badGuyxPosition;
      yPosition = badGuyyPosition;

    }

    public static void shoot() {
      System.out.println("Pew pew!");
    }

    public void getHit() {
      health--;
    }
    
}

Comentarios finales

Goomba

Adam Sinicki / Autoridad de Android

Entonces, ¡eso es todo lo que necesita saber sobre el uso de clases en Java! Es un concepto de alto nivel con el que has llegado a un acuerdo, ¡así que date una palmadita en la espalda! Si se siente cómodo con las clases y los elementos, es probable que esté listo para continuar con su aprendizaje. ¡Consulte la lista de los mejores lugares para aprender Java para obtener una educación completa en Java a precios muy reducidos!

Compruebe también

Todo lo que sabemos hasta ahora y lo que queremos ver

Ryan Haines / Autoridad de Android Google tomó la sabia decisión de volver a sus …

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *