Topicos Selectos De Programacion
Enviado por FaBhEr09 • 14 de Septiembre de 2011 • 8.541 Palabras (35 Páginas) • 916 Visitas
TIPOS DEFINIDOS POR EL USUARIO
1.1 AGREGACION DE DATOS (STRUCT).
Struct se puede considerar como una clase ligera. Puede contener constructores,
constantes, campos, métodos, propiedades, indicadores, operadores y tipos anidados todo
lo que una clase puede contener.
En el ejemplo siguiente, se inicializa struct con la palabra clave new, se llama al
constructor predeterminado sin parámetros y, a continuación, se establecen los miembros
de la instancia. Si quieres simular un struct en Java, simplemente lo que tienes que hacer
es definir una clase pública con todas las propiedades públicas:
public class Persona
{
public String nombre;
public String altura;
}
Lo que ocurre es que, teniendo la potencia de la programación orientada a objetos no
es recomendable definir clases así, pues las hace más sensibles a los cambios y el
acoplamiento entre clases es mayor, lo cual es algo a evitar. Es mejor definir métodos
set/get, que permiten modificar luego la estructura interna de la clase sin que cambie la
interfaz, además de garantizar que las propiedades toman valores adecuados.
public class Animal
{
private String especie;
private String altura;
public Animal(String especie,String
genero)
{
setespecie(especie);
setgenero(genero);
}
public void setespecie(String especie)
{
If (especie==null)
{
throw new
IllegalArgumentException("la especie
no debe ser nulo");
}
else
this.especie=especie;
}
public String getespecie()
{
return especie:
}
public void setaltura(String altura)
{
If (altura>=0)
throw new
IllegalArgumentException("La altura debe ser
positiva: "+altura);
else
this.altura=altura;
public int getAltura()
{
return altura;
}
}
}
Ingenieria en Sistemas Computacionales Topicos Selectos de Programacion
Pag: 6
Las clases set/get son mejores que los struct
// IDL
struct Date
{
short year;
short month; // 1-12
short day; // 1-31
};
// Java
final public class Date
implements org.omg.CORBA.portable.IDLEntity
{
public short year;
public short month;
public short day;
public Date() {}
public Date(short year, short month,
short day)
{ ... }
}
1.1 UNION DE DATOS.
En JAVA la unión de datos se da cuando una clase a se extiende mediante la herencia
por otra clase. Un ejemplo podría ser el siguiente:
public class alumno
{
Int calificaciones;
Int horario;
}
Y la otra clase hereda la clase anterior por lo tanto asi es como se maneja las uniones
de datos.
Public class datos_alumno extends alumno
{
String direccion;
String nombre;
Int edad;
}
Ingenieria en Sistemas Computacionales Topicos Selectos de Programacion
Pag: 7
1.3 REGISTROS VARIANTES.
Un registro o record es una estructura de datos compuesta de un número fijo de
componentes de diferente tipo. Cada componente o campo de un registro se accede por
el nombre del registro y el nombre de la componente. Puede que un registro contenga
partes de su estructura que puedan variar en función de otras. Para ello se definen los
REGISTROS VARIANTES que son un tipo especial de registros discriminados en los que
la existencia de algunos campos depende del valor del discriminante.
Si
...