Está en la página 1de 3

7

La codificación interna de una clase es el lugar en el que se definen los campos, los constructores y los métodos
que dan a los objetos de la clase sus características particulares y su comportamiento. Podemos resumir las
características esenciales de estos tres componentes de una clase como sigue:

• Los campos almacenan datos para que cada objeto los use.
• Los constructores permiten que cada objeto se prepare adecuadamente cuando es creado
• Los métodos implementan el comportamiento de los objetos.

En Java existen muy pocas reglas sobre el orden que se puede elegir para definir los campos, los constructores
y os métodos dentro de una clase, pero es recomendable listar primero los campos, segundo los constructores
y por último los métodos.

public class NombreDeClase{


campos o atributos
constructores
métodos
}
Los campos son espacios dentro de un objeto que se usan para almacenar valores. Todo objeto una vez creado,
dispondrá de un espacio para cada campo declarado en su clase.

Los constructores de una clase tienen un rol especial que cumplir: su responsabilidad es poner cada objeto de
esa clase en un estado adecuado para que pueda ser usado una vez que haya sido creado. Esta operación se
denomina inicialización o instanciación.

La manera en que los constructores y los métodos reciben valores, es mediante sus parámetros. Los parámetros
se definen en el encabezado o signatura del método. Los parámetros están disponibles sólo dentro del cuerpo
del constructor o del método que lo declara, es decir, su alcance es local. En cambio, el alcance de un atributo
o campo es de toda la clase (alcance global) y puede ser accedido desde cualquier lugar en la misma clase.

Ejemplo: Crear una clase que registre información sobre un libro. Tendrá como atributos e tipo String el autor
y el título del libro.

La clase debe tener un constructor con parámetros y los métodos que se indicarán a continuación:

public class Libro{


private String aut;
private String tit;

public Libro(String autL, String titL){


aut = autL;
tit = titL;
}
}
8

• Agregar al esquema de la clase Libro dos métodos: imprimirAutor e imprimirTitulo, que impriman
respectivamente los campos del autor y del título.
• Agregar un campo más, páginas, a la clase Libro para almacenar la cantidad de páginas. Este campo
debe ser de tipo int y su valor inicial debe ser pasado al único constructor, junto con las cadenas para
el autor y el título. Adicionar también un método consultor que retorne el número de páginas registrado.
• Agregar el método imprimirDetalles que muestra en pantalla el autor, el título y la cantidad de páginas.
• Agregar otro campo a la clase, numero de referencia. Este campo puede almacenar, un número de
referencia para una biblioteca. Debe ser de tipo String y ser inicializado en el constructor con una
cadena vacía. Definir un método modificador para este campo con la siguiente signatura:

public void setNumRef(String ref)

• Modificar el método imprimirDetalles para que incluya la impresión del número de referencia

Ejemplo: Definir una clase DiaAnyo que contenga los atributos mes y día, los métodos igual() y visualizar(). Que
el mes se registre como un valor entero: 1, Enero; 2, Febrero y así sucesivamente; el día del mes debe registrarse
en la variable entera día. Escribir un programa que compruebe si una fecha es su cumpleaños. El método main()
de la clase principal, Cumple, crea un objeto DiaAnyo y llama al método igual() para determinar si la fecha del
objeto coincide con la fecha de su cumpleaños, que se ha leído del dispositivo de entrada.

public class DiaAnyo{


private int mes;
private int dia;
public DiaAnyo(int d, int m) {
dia = d;
mes = m;
}

public boolean igual(DiaAnyo d) {


if ((dia == d.dia) && (mes == d.mes))
return true;
else
return false;
}

public void visualizar() {


System.out.println("mes = " + mes + " , dia = " + dia);
}
}
9

/////////////////////////////////////////

import java.io.*;
import java.util.*;
public class Cumple
{
public static void main(String[] ar)throws IOException {
DiaAnyo hoy;
DiaAnyo cumpleanyos;
int d, m;
Scanner entrada = new Scanner((System.in));
System.out.print("Introduzca fecha de hoy, dia: ");
d = entrada.nextInt();
System.out.print("Introduzca el número de mes: ");
m = entrada.nextInt();
hoy = new DiaAnyo(d,m);
System.out.print("Introduzca su fecha de nacimiento, dia: ");
d = entrada.nextInt();
System.out.print("Introduzca el número de mes: ");
m = entrada.nextInt();
cumpleanyos = new DiaAnyo(d,m);
System.out.print( " La fecha de hoy es ");
hoy.visualizar();
System.out.print( " Su fecha de nacimiento es ");
cumpleanyos.visualizar();
if (hoy.igual(cumpleanyos))
System.out.println( "¡Feliz cumpleaños ! ");
else
System.out.println( "¡Feliz dia ! ");
}
}

También podría gustarte