miércoles, 4 de febrero de 2026

Clases y Objetos en JAVA

 Java está pensado para modelar el mundo real con código.

No trabajas con números sueltos o funciones aisladas: trabajas con cosas.

Esas “cosas” se definen con clases y existen como objetos.


🏗️ ¿Qué es una clase en Java?

Una clase es un molde, plantilla o plano.

Define:

  • Qué datos tiene algo → atributos

  • Qué puede hacer → métodos

👉 La clase NO es algo real, es solo la descripción.

Analogía potente

Piensa en un plano de una casa:

  • Dice cuántas habitaciones hay

  • Dónde están las puertas

  • Cómo se usa el baño

Pero no puedes vivir en un plano.

public class Classes {

public static void main(String[] args) {

var person = new Person("Brais", -38, "123456789A");

// person.name = "Brais";
// person.age = 38;

person.sayHello();

person.name = "Brais Moure";
System.out.println(person.name);

// person.id = "123456789A";

System.out.println(person.getId());

person.setAge(38);
System.out.println(person.getAge());

var person2 = new Person("MoureDev", 18, "123456789B");
person2.sayHello();
}
}

🚗 ¿Qué es un objeto en Java?

Un objeto es una instancia real de una clase.

Es:

  • Algo que existe en memoria

  • Tiene valores concretos

  • Puede ejecutar métodos

Siguiendo la analogía

El objeto es la casa ya construida, con gente viviendo dentro.


public class Person {

// Atributos
protected String name;
private int age;
final private String id;

// Constructor
public Person(String name, int age, String id) {
this.name = name;
this.setAge(age);
this.id = id;
}

// Métodos
public void sayHello() {
System.out.println("Hola, soy " + name + ", tengo " + age + " años, y mi id es " + id + ".");
}

// Getter
public int getAge() {
return age;
}

public String getId() {
return id;
}

// Setter
public void setAge(int age) {
if (age > 0) {
this.age = age;
} else {
System.out.println("Edad no válida");
}
}
}