Java, declaración de clases
JavaJutsu: clases
Java es una especie de C++ simplificado al que le han quitado la herencia múltiple y los punteros. Como todo lenguaje orientado a objetos utiliza clases, con sus propiedades y métodos. Veamos un par de ejemplos:
Clase Genérica:
/**
* Clases
* Clase que muestra la declaración de una clase
*
* Para compilar:
* javac Clases.java
*
* Para ejecutarlo:
* java Clases
*/
// Librería necesaria para trabajar con la entrada/salida
import java.io.*;
/**
* clase Clases
* Clase que muestra la declaración de una clase
*
* @author Pello Altadill
*/
public class Clases {
// ATRIBUTOS de CLASE
String nombre;
/**
* Método constructor, se ejecuta al crear una instancia de la clase
*/
Clases ()
{
nombre = "Juan Solo";
System.out.println("Has creado una instancia de la clase");
}
/**
* saludo
* Un método de la clase que simplemente saca un mensaje
*/
void saludo ()
{
System.out.println("Hola Mundo, soy " + nombre);
}
/**
* main
* Función principal
* esta función es la que se inicia directamente al ejecutar el programa
*/
public static void main (String args[])
{
// Creamos una INSTANCIA de la clase:
// es como declarar una variable, pero el tipo es el
// nombre de la clase
Clases unaClase = new Clases();
// Con la instancia llamamos a uno de sus métodos
unaClase.saludo();
}
}
Clase Cliente:
/**
* Cliente
* Clase que muestra la declaración de una clase
*
* Para compilar:
* javac Cliente.java
*
* Para ejecutarlo:
* java Cliente
*/
// Librería necesaria para trabajar con la entrada/salida
import java.io.*;
// Libería necesaria para la clase Date
import java.util.Date;
/**
* clase Cliente
* Muestra la declaración de una clase que representa un cliente.
* Una clase se compone de atributos (propiedades) y métodos (funciones)
* La clase representa una entidad y cuando definimos una variable de
* de esa clase
*
* @author Pello Altadill
*/
public class Cliente {
// ATRIBUTOS o PROPIEDADES DE LA CLASE
public String nombre;
public String apellidos;
public Date nacimiento;
public int codigo;
// MÉTODOS DE LA CLASE: Constructores, y otras funciones
/**
* Cliente
* este es el método constructor, al que se invoca
* al crear una instancia de la clase
*/
Cliente ()
{
System.out.println("Has creado una instancia de Cliente");
}
/**
* Cliente
* Otro constructor con parámetros.
* Nos sirve para crear una instancia
*/
Cliente (String nombre, String apellidos, Date nacimiento, int codigo)
{
System.out.println("Has creado una instancia de Cliente");
this.nombre = nombre;
this.apellidos = apellidos;
this.nacimiento = nacimiento;
this.codigo = codigo;
}
/**
* nombreCompleto
* Método que une el nombre y el apellido del Cliente
* @return resultado
*/
public String nombreCompleto ()
{
String resultado = nombre + " " + apellidos;
return resultado;
}
/**
* fichaCliente
* Método que muestra todos los datos del cliente
*
*/
public void fichaCliente ()
{
System.out.println("--Ficha del Cliente--");
System.out.println("Código: " + codigo);
System.out.println("Nombre completo: " + nombreCompleto());
System.out.println("Fecha nacimiento: " + nacimiento);
}
/**
* saluda
* Un método que nos muestra un saludo
*/
public void saluda ()
{
System.out.println("Hola mundo desde la clase");
}
/**
* main
* Función principal
* esta función es la que se inicia directamente al ejecutar el programa
* Y desde ella vamos a crear una instancia de Cliente
*/
public static void main (String args[])
{
// Creamos un par de instancias
Cliente unCliente = new Cliente();
Cliente otroCliente = new Cliente("Darth","Vader", new Date(), 666);
unCliente.codigo = 89;
otroCliente.fichaCliente();
unCliente.saluda();
}
}