Clases, Objetos, Atributos y Métodos
Los bloques de construcción fundamentales de cualquier programa Java
¿Qué es una Clase?
Una clase es una plantilla o molde que define la estructura y el comportamiento de un tipo de objeto. Agrupa datos (atributos) y operaciones (métodos) que actúan sobre esos datos.
Declaración de una clase
La sintaxis básica para declarar una clase en Java es:
public class Persona {
// atributos
String nombre;
int edad;
// métodos
void saludar() {
System.out.println("Hola, soy " + nombre);
}
} Por convención, los nombres de clase en Java usan PascalCase: la primera letra de cada palabra en mayúscula.
¿Qué es un Objeto?
Un objeto es una instancia concreta de una clase. Si la clase es el plano de una casa, el objeto es la casa construida a partir de ese plano. Cada objeto tiene su propio estado (valores de atributos) independiente del resto de objetos de la misma clase.
Instanciación con new
Para crear un objeto se usa la palabra reservada new junto al constructor de la clase:
Persona persona1 = new Persona();
persona1.nombre = "Ana";
persona1.edad = 30;
persona1.saludar(); // imprime: Hola, soy Ana
Persona persona2 = new Persona();
persona2.nombre = "Luis";
persona2.edad = 25;
persona2.saludar(); // imprime: Hola, soy Luis persona1 y persona2 son dos objetos distintos que comparten la misma plantilla (Persona), pero cada uno mantiene sus propios valores de nombre y edad.
Atributos
Los atributos (también llamados campos o fields) representan el estado de un objeto. Se declaran dentro del cuerpo de la clase, fuera de cualquier método.
Tipos de atributos
public class Coche {
// atributo de instancia (cada objeto tiene el suyo)
String marca;
int velocidadActual;
// atributo de clase (compartido por todos los objetos)
static int totalCoches = 0;
// constante (atributo final estático)
static final int VELOCIDAD_MAXIMA = 200;
} - Instancia: cada objeto tiene su propia copia.
- Estático (
static): pertenece a la clase, no al objeto; se comparte. - Constante (
static final): no puede cambiar tras su inicialización.
Métodos
Los métodos definen el comportamiento de un objeto: las operaciones que puede realizar.
Un método puede recibir parámetros y devolver un valor (o nada, si su tipo de retorno es void).
Anatomía de un método
// modificador tipo_retorno nombre (parámetros)
public int sumar (int a, int b) {
return a + b;
}
// método void: no devuelve nada
public void mostrarInfo() {
System.out.println("Marca: " + marca);
System.out.println("Velocidad: " + velocidadActual);
} El método main: punto de entrada
Toda aplicación Java necesita un método main como punto de arranque. La JVM busca exactamente esta
firma para iniciar la ejecución:
public class Main {
public static void main(String[] args) {
Persona p = new Persona();
p.nombre = "Carlos";
p.saludar();
}
}