TEMA 1 Los TDA - tipos de datos abstractos
+53
Armando Calle
Doug Alban
LuisAntonio
Maggie
johannaColoma
josexavieryagual
jofre
jacampoverde
jose
alejandro
Frank Galvez
Miguel Yanez
jmoscoso
joseph manobanda
jonathan muñiz
Norma Pazmino
carodrig
Elissette Guerrero
rualex
Roberto Carlos Espinosa
rsso
jeans carriel
dario moran
naola
Elizabeth Arreaga
edwin de la cruz villacis
carmen ostaiza vera
Aida Hugo
Gabriela Pimentel Suarez
normanvilche
Ezequiel Almeida
Andres Garcia
Evelyn Moya Serrat
YulZambrano
Frank Vera
richard
MGuerra
EBolaños
tania muzzio
jose sarzosa
Carlos Carpio
J.Rodriguez
Nathaly Vásquez Paredes
jeannette elizabeth
Lia Callejas
Diego Marcillo
Cristina Narváez
César Rosas
miguelmodem
jose luis proaño
Manuel Chang
Jorge Cabrera Vargas
Ing Joe Llerena
57 participantes
Página 3 de 5.
Página 3 de 5. • 1, 2, 3, 4, 5
[i]5.- Agregue un ejemplo (código en Java de su respuesta)[/i]
Elejmplo de interfaz
Por ejemplo:
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
F:\materias\Tutorial de Java - Interfaces.htm
El siguiente ejemplo recorre una colección de Integer borrando todos los ceros:
void borrarCeros(Collection<Integer> ceros)
{
Iterator<Integer> it = ceros.iterator();
While(it.hasNext())
{
int i = it.next();
if(i==0)
it.remove;
}
}
http://www.adrformacion.com/cursos/puntonet/leccion2/tutorial6.html
Por ejemplo:
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
F:\materias\Tutorial de Java - Interfaces.htm
El siguiente ejemplo recorre una colección de Integer borrando todos los ceros:
void borrarCeros(Collection<Integer> ceros)
{
Iterator<Integer> it = ceros.iterator();
While(it.hasNext())
{
int i = it.next();
if(i==0)
it.remove;
}
}
http://www.adrformacion.com/cursos/puntonet/leccion2/tutorial6.html
Agregue un ejemplo (código en Java de su respuesta)
codigoeuna interface
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
http://www.probandocodigo.com/2008/05/generics-en-java.html
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
http://www.probandocodigo.com/2008/05/generics-en-java.html
EBolaños- Mensajes : 5
Fecha de inscripción : 04/11/2008
[i]1.- ¿Qué entendemos por los tipos de datos abstractos?[/i]
La abstracción de datos es una metodología que permite aislar la implementación de un tipo de datos compuesto a partir de tipos básicos. La idea es estructurar los programas de modo que trabajen sobre datos abstractos, sin conocer su implementación. Los programas deben usar los tipos de datos de manera que no se hagan suposiciones sobre los datos que no sean estrictamente necesarias para cumplir con la tarea involucrada.
http://www2.ing.puc.cl/~iic11021/materia/cap12.htm
http://www2.ing.puc.cl/~iic11021/materia/cap12.htm
richard- Mensajes : 5
Fecha de inscripción : 19/11/2008
[i]3.- ¿Qué son las interfaces en Java?[/i]
yo entiendo q una interface es una colección de declaraciones de métodos (sin definirlos) y también puede incluir constantes.
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
richard- Mensajes : 5
Fecha de inscripción : 19/11/2008
[i]4.- ¿Qué son las colecciones?[/i]
[las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas. Tienen interfaces de método para su iteración y recorrido. Se pueden indexar mediante algo más complejo y útil que los simples enteros. Hasta el JDK 1.1, las Colecciones parecían estar incorporadas a Java por necesidad de aportar alguna herramienta para el almacenamiento de datos. Pero en el JDK 1.2, se han revisado completamente las Colecciones y ahora el programador dispone de toda la potencia de estas nuevas estructuras de datos, a las cuales se ha hecho referencia en secciones anteriores, a las cuales debe remitirse el lector, aquí solamente se citarán por estar incluidas dentro de las clases base de Java, y muy por encima.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
richard- Mensajes : 5
Fecha de inscripción : 19/11/2008
[i]5.- Agregue un ejemplo (código en Java de su respuesta)[/i]
public class Main {
public static void main(String[] args) {
sal s =new sal();
jua ss = s;
s.saluda("Holita");
sal2 s2 =new sal2();
s2.saluda("corcho");
}
}
class sal implements jua{
public int ki;
public void saluda(String n){
System.out.println(n);
}
}
class sal2 extends sal{
}
interface jua{
void saluda(String n);
//int ped();
}
http://www.kriptus.com/ejemplo-de-uso-de-interfaz-en-java/
public static void main(String[] args) {
sal s =new sal();
jua ss = s;
s.saluda("Holita");
sal2 s2 =new sal2();
s2.saluda("corcho");
}
}
class sal implements jua{
public int ki;
public void saluda(String n){
System.out.println(n);
}
}
class sal2 extends sal{
}
interface jua{
void saluda(String n);
//int ped();
}
http://www.kriptus.com/ejemplo-de-uso-de-interfaz-en-java/
richard- Mensajes : 5
Fecha de inscripción : 19/11/2008
Preguntas Faltantes por Manuel Chang
2.- ¿De dónde se derivan los tipos de datos abstractos?
Cuando se define de esta forma una estructura de datos, se denomina tipo de datos abstracto. La idea es separar el "concepto" de lo que debe hacer la estructura de datos de cualquier implementación particular.
Cuando una estrutura de datos se define de manera completa, es decir, no únicamente con la descripción de las operaciones, sino con la implementación de las mismas se conoce como tipo de datos concreto.
http://www.olimpiadadeinformatica.org/material%20de%20estudio/cursos/estructuras_de_datos.htm
3.- ¿Qué son las interfaces en Java?
Un ainterface es una colección de declaraciones de métodos que no estan definidos y los cualespueden incluir constantes.
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
4.- ¿Qué son las colecciones?
las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
5.- Agregue un ejemplo (código en Java de su respuesta)
Ejemplo: ejemploVector.java
import java.util.*;
class Coche {
private int numCoche;
Coche( int i ) {
numCoche = i;
}
void print() {
System.out.println( "Coche #"+numCoche );
}
}
class Barco {
private int numBarco;
Barco( int i ) {
numBarco = i;
}
void print() {
System.out.println( "Barco #"+numBarco );
}
}
public class ejemploVector {
public static void main( String args[] ) {
Vector coches = new Vector();
for( int i=0; i < 7; i++ )
coches.addElement( new Coche( i ) );
coches.addElement( new Barco( 7 ) );
for( int i=0; i < coches.size(); i++ )
(( Coche )coches.elementAt( i ) ).print();
}
}
Cuando se define de esta forma una estructura de datos, se denomina tipo de datos abstracto. La idea es separar el "concepto" de lo que debe hacer la estructura de datos de cualquier implementación particular.
Cuando una estrutura de datos se define de manera completa, es decir, no únicamente con la descripción de las operaciones, sino con la implementación de las mismas se conoce como tipo de datos concreto.
http://www.olimpiadadeinformatica.org/material%20de%20estudio/cursos/estructuras_de_datos.htm
3.- ¿Qué son las interfaces en Java?
Un ainterface es una colección de declaraciones de métodos que no estan definidos y los cualespueden incluir constantes.
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
4.- ¿Qué son las colecciones?
las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
5.- Agregue un ejemplo (código en Java de su respuesta)
Ejemplo: ejemploVector.java
import java.util.*;
class Coche {
private int numCoche;
Coche( int i ) {
numCoche = i;
}
void print() {
System.out.println( "Coche #"+numCoche );
}
}
class Barco {
private int numBarco;
Barco( int i ) {
numBarco = i;
}
void print() {
System.out.println( "Barco #"+numBarco );
}
}
public class ejemploVector {
public static void main( String args[] ) {
Vector coches = new Vector();
for( int i=0; i < 7; i++ )
coches.addElement( new Coche( i ) );
coches.addElement( new Barco( 7 ) );
for( int i=0; i < coches.size(); i++ )
(( Coche )coches.elementAt( i ) ).print();
}
}
Manuel Chang- Mensajes : 2
Fecha de inscripción : 04/11/2008
Edad : 34
Localización : Guayaquil, Ecuador
1.- ¿Qué entendemos por los tipos de datos abstractos?
TDA es un modelo matemático de estructuras de datos que especifica los tipos de datos almacenados, las operaciones definidas sobre estos datos y los tipos de los parámetros de estas operaciones.
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
2.- ¿De dónde se derivan los tipos de datos abstractos?
Un TDA se deriva de una clase padre llamada superclase(clase derivada)
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
3.- ¿Qué son las interfaces en Java?
Una interfaz define una serie de métodos que debe implementar una clase. Es decir,
En Java una interface define una serie de métodos que debe implementar una clase, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno),tambien se puede decir que una interface es una colección de métodos sin cuerpo. Permite al diseñador de clases establecer la forma basica de una clase
En Java una interface define una serie de métodos que debe implementar una clase, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno),tambien se puede decir que una interface es una colección de métodos sin cuerpo. Permite al diseñador de clases establecer la forma basica de una clase
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
4.- ¿Qué son las colecciones?
Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas. Tienen interfaces de método para su iteración y recorrido. Se pueden indexar mediante algo más complejo y útil que los simples enteros.
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
5.- Agregue un ejemplo (código en Java de su respuesta)
Por ejemplo:
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
Las clases que quieran utilizar el interface VideoClip utilizarán la palabra implements y proporcionarán el código necesario para implementar los métodos que se han definido para el interface:
class MiClase implements VideoClip {
void play() {
<código>
}
void bucle() {
<código>
}
void stop() {
<código>
}
Al utilizar implements para el interface es como si se hiciese una acción de copiar-y-pegar del código del interface, con lo cual no se hereda nada, solamente se pueden usar los métodos.
La ventaja principal del uso de interfaces es que una clase interface puede ser implementada por cualquier número de clases, permitiendo a cada clase compartir el interfaz de programación sin tener que ser consciente de la implementación que hagan las otras clases que implementen el interface.
class MiOtraClase implements VideoClip {
void play() {
<código nuevo>
}
void bucle() {
<código nuevo>
}
void stop() {
<código nuevo>
}
public interface VideoClip {
// comienza la reproduccion del video
void play();
// reproduce el clip en un bucle
void bucle();
// detiene la reproduccion
void stop();
}
Las clases que quieran utilizar el interface VideoClip utilizarán la palabra implements y proporcionarán el código necesario para implementar los métodos que se han definido para el interface:
class MiClase implements VideoClip {
void play() {
<código>
}
void bucle() {
<código>
}
void stop() {
<código>
}
Al utilizar implements para el interface es como si se hiciese una acción de copiar-y-pegar del código del interface, con lo cual no se hereda nada, solamente se pueden usar los métodos.
La ventaja principal del uso de interfaces es que una clase interface puede ser implementada por cualquier número de clases, permitiendo a cada clase compartir el interfaz de programación sin tener que ser consciente de la implementación que hagan las otras clases que implementen el interface.
class MiOtraClase implements VideoClip {
void play() {
<código nuevo>
}
void bucle() {
<código nuevo>
}
void stop() {
<código nuevo>
}
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
Algunas de las respuestas a las preguntas las encontre en estos sitios web:
http://www.mygnet.net/articulos/c/tipos_abstractos_de_datos.523
http://elvex.ugr.es/decsai/java/pdf/AC-interfaces.pdf
http://www.cica.es/formacion/JavaTut/Cap1/interf.html
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
http://www.reloco.com.ar/prog/java/collections.html
http://dis.um.es/~bmoros/privado/practicas/Curso05-06/seminario5-curso0506.ppt#400,2,Colecciones en Java
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://www.ldc.usb.ve/~gabro/teaching/CI2126/TADPilaLista.pdf[img]
www.inf.utfsm.cl/~rmonge/lenguaje/apunte03-01.pdf
www.arrakis.es/~abelp/ApuntesJava/Interfaces.htm
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://elvex.ugr.es/decsai/java/pdf/AC-interfaces.pdf
http://www.cica.es/formacion/JavaTut/Cap1/interf.html
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
http://www.reloco.com.ar/prog/java/collections.html
http://dis.um.es/~bmoros/privado/practicas/Curso05-06/seminario5-curso0506.ppt#400,2,Colecciones en Java
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://www.ldc.usb.ve/~gabro/teaching/CI2126/TADPilaLista.pdf[img]
www.inf.utfsm.cl/~rmonge/lenguaje/apunte03-01.pdf
www.arrakis.es/~abelp/ApuntesJava/Interfaces.htm
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
Frank Vera- Mensajes : 6
Fecha de inscripción : 12/11/2008
Estan todos los preguntas en esta respuesta
Tema 1
1.-¿QUE ENTENDEMOS POR TIPOS DE DATOS ABSTRACTOS?
Un TDA es un tipo de dato que lo define el programdor que puede ser manipulado como los tipos definidos por el sistema
En un TDA existen dos elementos diferenciados:
- La Interfaz de utilización
- La representación
Para construir un tipo abstracto debemos:
1. Exponer una definición del tipo.
2. Definir las operaciones (funciones y procedimientos) que
permitan operar con instancias de ese tipo.
3. Ocultar la representación de los elementos del tipo de modo
que sólo se pueda actuar sobre ellos con las operaciones
proporcionadas.
4. Poder hacer instancias múltiples del tipo.
Ejemplo:
- Definición del tipo
Numero racional: Conjunto de pares de elementos (a,b)
de tipo entero, con b<>0.
- Operaciones:
CrearRacional: a, b = (a,b)
Suma: (a,b) + (c,d) = (a*d+b*c , b*d)
Resta: (a,b) - (c,d) = (a*d-b*c , b*d)
Producto: (a,b) * (c,d) = (a*c , b*d)
División: (a,b) / (c,d) = (a*d , b*c)
Numerador: (a,b) = a
Denominador: (a,b) = b
ValorReal: (a,b) = a/b
MCD: (a,b) ...
Potencia: (a,b)^c = (a^c , b^c)
Simplifica: (a,b) = ( a/mcd(a,b) , b/mcd(a,b) )
Una vez definido se podrán declarar variables de ese tipo y
operar con ellas utilizando las operaciones que aporta el tipo.
Ejemplo: TRacional r1,r2, rsuma;
CrearRacional(4,7, &r1);
CrearRacional(5,8,&r2);
Suma(r1, r2, &rsuma);
printf(“El valor real es %f”, ValorReal(rsuma) );
Paguina
TDA
2.-DE DONDE SE DERIVAN LOS TIPOS DE DATOS ABSTRACOS
Los TDA se dervan de los tipos de datos primitivos (enteros, caracteres,...), al igual que los procedimientos son generalizaciones de operaciones primitivas (suma, resta,...)..
Paguina
http://wwwdi.ujaen.es/asignaturas/ProgIITel/pdfs/tema4.pdf
3.-¿QUE SON LAS INTERFACES EL JAVA?
Son declaraciones de metodos sin ser definidos donde tambien se pueden incluir constantes
Runnable es un ejemplo de interface en el cual se declara, pero no se implemementa, una función miembro run.
public interface Runnable {
public abstract void run();
}
Las clases que implementen (implements) el interface Runnable han de definir obligatoriamente la función run.
Ejemplo:
class Animacion implements Runnable{
//..
public void run(){
//define la función run
}
}
Paguina
Interfaces
4.-¿QUE SON LAS COLECCIONES?
Es una manera completa y orientada para almacenar un conjunto de datos de tipo similar
Tienen su propia asignacion de memoria y si es necesario se pueden expandir mas
Tmien son llamadas como enumeraciones
En el programa de ejemplo, se utiliza una clase llamada Coleccion para implementar una enumeración de objetos de tipo Integer, y la clase principal que crea una instancia de Coleccion, itera sobre sus valores e imprime cada uno de ellos. Coleccion no contiene realmente ningún dato; simplemente devuelve la secuencia de enteros que ha construido.
Ejemplo
import java.util.Enumeration;
class Coleccion implements Enumeration {
private int cnt = 0;
private boolean mas = true;
public boolean hasMoreElements() {
return( mas );
}
public Object nextElement() {
cnt++;
if( cnt > 4 )
mas = false;
return( new Integer( cnt ) );
}
}
class java816 {
public static void main( String args[] ) {
Enumeration enum = new Coleccion();
while( enum.hasMoreElements() ) {
System.out.println( enum.nextElement() );
}
}
}
Paguina
Colecciones
Colecciones
5.-AGREGUE UN EJEMPLO CODIGO JAVA DE SU RESPUESTA
Profe yo a cada pregunta ya le puse su ejemplo y el URL donde encontre las respuesta::
1.-¿QUE ENTENDEMOS POR TIPOS DE DATOS ABSTRACTOS?
Un TDA es un tipo de dato que lo define el programdor que puede ser manipulado como los tipos definidos por el sistema
En un TDA existen dos elementos diferenciados:
- La Interfaz de utilización
- La representación
Para construir un tipo abstracto debemos:
1. Exponer una definición del tipo.
2. Definir las operaciones (funciones y procedimientos) que
permitan operar con instancias de ese tipo.
3. Ocultar la representación de los elementos del tipo de modo
que sólo se pueda actuar sobre ellos con las operaciones
proporcionadas.
4. Poder hacer instancias múltiples del tipo.
Ejemplo:
- Definición del tipo
Numero racional: Conjunto de pares de elementos (a,b)
de tipo entero, con b<>0.
- Operaciones:
CrearRacional: a, b = (a,b)
Suma: (a,b) + (c,d) = (a*d+b*c , b*d)
Resta: (a,b) - (c,d) = (a*d-b*c , b*d)
Producto: (a,b) * (c,d) = (a*c , b*d)
División: (a,b) / (c,d) = (a*d , b*c)
Numerador: (a,b) = a
Denominador: (a,b) = b
ValorReal: (a,b) = a/b
MCD: (a,b) ...
Potencia: (a,b)^c = (a^c , b^c)
Simplifica: (a,b) = ( a/mcd(a,b) , b/mcd(a,b) )
Una vez definido se podrán declarar variables de ese tipo y
operar con ellas utilizando las operaciones que aporta el tipo.
Ejemplo: TRacional r1,r2, rsuma;
CrearRacional(4,7, &r1);
CrearRacional(5,8,&r2);
Suma(r1, r2, &rsuma);
printf(“El valor real es %f”, ValorReal(rsuma) );
Paguina
TDA
2.-DE DONDE SE DERIVAN LOS TIPOS DE DATOS ABSTRACOS
Los TDA se dervan de los tipos de datos primitivos (enteros, caracteres,...), al igual que los procedimientos son generalizaciones de operaciones primitivas (suma, resta,...)..
Paguina
http://wwwdi.ujaen.es/asignaturas/ProgIITel/pdfs/tema4.pdf
3.-¿QUE SON LAS INTERFACES EL JAVA?
Son declaraciones de metodos sin ser definidos donde tambien se pueden incluir constantes
Runnable es un ejemplo de interface en el cual se declara, pero no se implemementa, una función miembro run.
public interface Runnable {
public abstract void run();
}
Las clases que implementen (implements) el interface Runnable han de definir obligatoriamente la función run.
Ejemplo:
class Animacion implements Runnable{
//..
public void run(){
//define la función run
}
}
Paguina
Interfaces
4.-¿QUE SON LAS COLECCIONES?
Es una manera completa y orientada para almacenar un conjunto de datos de tipo similar
Tienen su propia asignacion de memoria y si es necesario se pueden expandir mas
Tmien son llamadas como enumeraciones
En el programa de ejemplo, se utiliza una clase llamada Coleccion para implementar una enumeración de objetos de tipo Integer, y la clase principal que crea una instancia de Coleccion, itera sobre sus valores e imprime cada uno de ellos. Coleccion no contiene realmente ningún dato; simplemente devuelve la secuencia de enteros que ha construido.
Ejemplo
import java.util.Enumeration;
class Coleccion implements Enumeration {
private int cnt = 0;
private boolean mas = true;
public boolean hasMoreElements() {
return( mas );
}
public Object nextElement() {
cnt++;
if( cnt > 4 )
mas = false;
return( new Integer( cnt ) );
}
}
class java816 {
public static void main( String args[] ) {
Enumeration enum = new Coleccion();
while( enum.hasMoreElements() ) {
System.out.println( enum.nextElement() );
}
}
}
Paguina
Colecciones
Colecciones
5.-AGREGUE UN EJEMPLO CODIGO JAVA DE SU RESPUESTA
Profe yo a cada pregunta ya le puse su ejemplo y el URL donde encontre las respuesta::
YulZambrano- Mensajes : 1
Fecha de inscripción : 19/11/2008
¿De dónde se derivan los tipos de datos abstractos?
Las propiedades de los procedimientos: generalización y encapsulación, son igualmente aplicables a los tipos de datos abstractos. Los TDA son generalizaciones de los tipos de datos primitivos (enteros, reales, etc.), al igual que los procedimientos son generalizaciones de operaciones primitivas (suma, resta, etc.). Un TDA encapsula ciertos tipos de datos en el sentido de que es posible localizar la definición del tipo y todas las operaciones con ese tipo en una sección de programa.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
jose luis proaño- Mensajes : 5
Fecha de inscripción : 09/11/2008
Edad : 35
3.- ¿Qué son las interfaces en Java?
Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.
Declaración y usoUna interface se declara:
interface nombre_interface {
tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . .
}
Por ejemplo:
interface InstrumentoMusical {
void tocar();
void afinar();
String tipoInstrumento();
}
Y una clase que implementa la interface:
class InstrumentoViento extends Object implements InstrumentoMusical {
void tocar() { . . . };
void afinar() { . . .};
String tipoInstrumento() {}
}
class Guitarra extends InstrumentoViento {
String tipoInstrumento() {
return "Guitarra";
}
http://www.google.com.ec/search?hl=es&q=Qu%C3%A9+son+las+interfaces+en+Java&btnG=Buscar+con+Google&meta=
jose luis proaño- Mensajes : 5
Fecha de inscripción : 09/11/2008
Edad : 35
que son la colecciones
Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas. Tienen interfaces de método para su iteración y recorrido. Se pueden indexar mediante algo más complejo y útil que los simples enteros.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
jose luis proaño- Mensajes : 5
Fecha de inscripción : 09/11/2008
Edad : 35
Agregue un ejemplo
import java.util.Dictionary;
import java.util.Hashtable;
class java818 {
public static void main( String args[] ) {
Hashtable ht = new Hashtable();
ht.put( "titulo","Tutorial de Java" );
ht.put( "autor","Agustin Froufe" );
ht.put( "email","froufe@arrakis.es" );
ht.put( "patria","Spain" );
ht.put( "edad",new Integer( 31 ) );
show( ht );
}
static void show( Dictionary d ) {
System.out.println( "Titulo: " + d.get( "titulo" ) );
System.out.println( "Autor: " + d.get( "autor" ) );
System.out.println( "E-mail: " + d.get( "email" ) );
System.out.println( "Pais: " + d.get( "patria" ) );
System.out.println( "Edad: " + d.get( "edad" ) );
}
}
aqui esta una pagina donde hay alguno ejempo
http://programasjava.blogspot.com/
import java.util.Hashtable;
class java818 {
public static void main( String args[] ) {
Hashtable ht = new Hashtable();
ht.put( "titulo","Tutorial de Java" );
ht.put( "autor","Agustin Froufe" );
ht.put( "email","froufe@arrakis.es" );
ht.put( "patria","Spain" );
ht.put( "edad",new Integer( 31 ) );
show( ht );
}
static void show( Dictionary d ) {
System.out.println( "Titulo: " + d.get( "titulo" ) );
System.out.println( "Autor: " + d.get( "autor" ) );
System.out.println( "E-mail: " + d.get( "email" ) );
System.out.println( "Pais: " + d.get( "patria" ) );
System.out.println( "Edad: " + d.get( "edad" ) );
}
}
aqui esta una pagina donde hay alguno ejempo
http://programasjava.blogspot.com/
jose luis proaño- Mensajes : 5
Fecha de inscripción : 09/11/2008
Edad : 35
Re: TEMA 1 Los TDA - tipos de datos abstractos
1.- ¿Qué entendemos por los tipos de datos abstractos?
Un TDA es un tipo de dato definido por el programador que se
puede manipular de un modo similar a los tipos de datos
definidos por el sistema.
Un TDA es el elemento básico de la abstracción de datos. Su
desarrollo es independiente del lenguaje de programación
utilizado, aunque este puede aportar mecanismos que faciliten
su realización.
http://wwwdi.ujaen.es/asignaturas/ProgIITel/pdfs/tema4.pdf
3.- ¿Qué son las interfaces en Java?
Las interfaces Java son expresiones puras de diseño. Se trata de auténticas conceptualizaciones no implementadas que sirven de guía para definir un determinado concepto (clase) y lo que debe hacer, pero sin desarrollar un mecanismo de solución.
Se trata de declarar métodos abstractos y constantes que posteriormente puedan ser implementados de diferentes maneras según las necesidades de un programa.
Por ejemplo una misma interfaz podría ser implementada en una versión de prueba de manera poco óptima, y ser acelerada convenientemente en la versión definitiva tras conocer más a fondo el problema.
Para declarar una interfaz se utiliza la sentencia interface, de la misma manera que se usa la sentencia class:
interface MiInterfaz {
int CONSTANTE = 100;
int metodoAbstracto( int parametro );
}
http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_9.htm
4.- ¿Qué son las colecciones?
Java tiene matrices para almacenar grupos de datos de tipo similar, que son muy útiles para modelos simples de acceso a datos. Sin embargo, las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas. Tienen interfaces de método para su iteración y recorrido.
5.- Agregue un ejemplo (código en Java de su respuesta)
ants.dif.um.es/~fernan/tdas.ppt
antares.itmorelia.edu.mx/~jcolivar/cursos/c208a/c2_u1c.ppt
[quote]
Un TDA es un tipo de dato definido por el programador que se
puede manipular de un modo similar a los tipos de datos
definidos por el sistema.
Un TDA es el elemento básico de la abstracción de datos. Su
desarrollo es independiente del lenguaje de programación
utilizado, aunque este puede aportar mecanismos que faciliten
su realización.
http://wwwdi.ujaen.es/asignaturas/ProgIITel/pdfs/tema4.pdf
3.- ¿Qué son las interfaces en Java?
Las interfaces Java son expresiones puras de diseño. Se trata de auténticas conceptualizaciones no implementadas que sirven de guía para definir un determinado concepto (clase) y lo que debe hacer, pero sin desarrollar un mecanismo de solución.
Se trata de declarar métodos abstractos y constantes que posteriormente puedan ser implementados de diferentes maneras según las necesidades de un programa.
Por ejemplo una misma interfaz podría ser implementada en una versión de prueba de manera poco óptima, y ser acelerada convenientemente en la versión definitiva tras conocer más a fondo el problema.
Para declarar una interfaz se utiliza la sentencia interface, de la misma manera que se usa la sentencia class:
interface MiInterfaz {
int CONSTANTE = 100;
int metodoAbstracto( int parametro );
}
http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_9.htm
4.- ¿Qué son las colecciones?
Java tiene matrices para almacenar grupos de datos de tipo similar, que son muy útiles para modelos simples de acceso a datos. Sin embargo, las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas. Tienen interfaces de método para su iteración y recorrido.
5.- Agregue un ejemplo (código en Java de su respuesta)
ants.dif.um.es/~fernan/tdas.ppt
antares.itmorelia.edu.mx/~jcolivar/cursos/c208a/c2_u1c.ppt
[quote]
Evelyn Moya Serrat- Mensajes : 2
Fecha de inscripción : 14/11/2008
TDA
Se entiende por TDA a un tipo dato que lo definimos nosotros mismo, lo cual quiere decir que
es manipulable...y pueden llegar ha ser del mismo tipos de datos ya definidos en el
sistema,y pueden se de tipo entero,real,boolean,char...etc
Se caracterizan por:
1.Exportar un tipo.
2.Exportar un conjunto de operaciones. Este conjunto es llamado interface.
3.Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la
estructura de datos del TDA.
4.Axiomas y precondiciones definen el ámbito de aplicación del TDA.
Interface:
Los interfaces proporcionan un mecanismo para abstraer los métodos a un nivel superior.
Un interface contiene una colección de métodos que se implementan en otro lugar.
Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación
para ampliarlas. Tienen interfaces de método para su iteración y recorrido.
por ejemplo, en la calculadora: los elementos que maneja son cantidades numéricas y las
operaciones que tiene definidas sobre éstas son las operaciones aritméticas.
Codigo de TDA en JAVA:
El ejemplo se encuentra en este enlace:
*** http://eisc.univalle.edu.co/~orlandoa/FADA/Clases_fada_2005/Unidad4-2.pdf ***
http://www.ldc.usb.ve/~gabro/teaching/CI2126/TADPilaLista.pdf
http://www.desy.de/gna/html/cc/Tutorial/Spanish/node4.html
http://www.cica.es/formacion/JavaTut/Cap1/interf.html
http://eisc.univalle.edu.co/~orlandoa/FADA/Clases_fada_2005/Unidad4-2.pdf
es manipulable...y pueden llegar ha ser del mismo tipos de datos ya definidos en el
sistema,y pueden se de tipo entero,real,boolean,char...etc
Se caracterizan por:
1.Exportar un tipo.
2.Exportar un conjunto de operaciones. Este conjunto es llamado interface.
3.Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la
estructura de datos del TDA.
4.Axiomas y precondiciones definen el ámbito de aplicación del TDA.
Interface:
Los interfaces proporcionan un mecanismo para abstraer los métodos a un nivel superior.
Un interface contiene una colección de métodos que se implementan en otro lugar.
Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación
para ampliarlas. Tienen interfaces de método para su iteración y recorrido.
por ejemplo, en la calculadora: los elementos que maneja son cantidades numéricas y las
operaciones que tiene definidas sobre éstas son las operaciones aritméticas.
Codigo de TDA en JAVA:
El ejemplo se encuentra en este enlace:
*** http://eisc.univalle.edu.co/~orlandoa/FADA/Clases_fada_2005/Unidad4-2.pdf ***
http://www.ldc.usb.ve/~gabro/teaching/CI2126/TADPilaLista.pdf
http://www.desy.de/gna/html/cc/Tutorial/Spanish/node4.html
http://www.cica.es/formacion/JavaTut/Cap1/interf.html
http://eisc.univalle.edu.co/~orlandoa/FADA/Clases_fada_2005/Unidad4-2.pdf
Andres Garcia- Mensajes : 2
Fecha de inscripción : 06/11/2008
Tipos de datos abstractos////Ezequiel Almeida
1.- ¿Qué entendemos por los tipos de datos abstractos?
Los TDA serian como un eje o método a seguir en este caso matemático el cual posee varias operaciones con las cuales son llamadas conforme se las utilice, las cuales están definidas para un conjunto de datos que serán utilizadas por el programa.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
El concepto de tipo de dato abstracto (TDA, Abstract Data Types ), fue propuesto por primera vez hacia 1974 por John Guttag y otros, pero no fue hasta 1975 que por primera vez Liskov lo propuso para el lenguaje CLU.
El lenguaje Turbo Pascal fue determinante para la común aceptación de los TDAs con la introducción de las Units. Si bien estas no cumplen con las características básicas de un Tipo de dato Abstracto, como por ejemplo: la encapsulación de los datos. modular.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
3.- ¿Qué son las interfaces en Java?
En Java una interface es una clase abstracta pura, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código). Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.
http://www.arrakis.es/~abelp/ApuntesJava/Interfaces.htm
4.- ¿Qué son las colecciones?
Java tiene desde la versión 1.2 todo un juego de clases e interfaces para guardar colecciones de objetos. En él, todas las entidades conceptuales están representadas por interfaces.
5.- Agregue un ejemplo (código en Java de su respuesta)
Declaracion de Interface
interface nombre_interface {
tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . .
}
Ejemplo con clase AnimalPerro
interface AnimalPerro {
void comer();
void dormir();
String raza();
}
Clase que sirve para implementar la Interface
class Bulldog extends Object implements AnimalPerro {
void caracter() { . . . };
void alimentacion() { . . .};
String Datosdeperro() {}
}
Los TDA serian como un eje o método a seguir en este caso matemático el cual posee varias operaciones con las cuales son llamadas conforme se las utilice, las cuales están definidas para un conjunto de datos que serán utilizadas por el programa.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
El concepto de tipo de dato abstracto (TDA, Abstract Data Types ), fue propuesto por primera vez hacia 1974 por John Guttag y otros, pero no fue hasta 1975 que por primera vez Liskov lo propuso para el lenguaje CLU.
El lenguaje Turbo Pascal fue determinante para la común aceptación de los TDAs con la introducción de las Units. Si bien estas no cumplen con las características básicas de un Tipo de dato Abstracto, como por ejemplo: la encapsulación de los datos. modular.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
3.- ¿Qué son las interfaces en Java?
En Java una interface es una clase abstracta pura, es decir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código). Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.
http://www.arrakis.es/~abelp/ApuntesJava/Interfaces.htm
4.- ¿Qué son las colecciones?
Java tiene desde la versión 1.2 todo un juego de clases e interfaces para guardar colecciones de objetos. En él, todas las entidades conceptuales están representadas por interfaces.
5.- Agregue un ejemplo (código en Java de su respuesta)
Declaracion de Interface
interface nombre_interface {
tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . .
}
Ejemplo con clase AnimalPerro
interface AnimalPerro {
void comer();
void dormir();
String raza();
}
Clase que sirve para implementar la Interface
class Bulldog extends Object implements AnimalPerro {
void caracter() { . . . };
void alimentacion() { . . .};
String Datosdeperro() {}
}
Ezequiel Almeida- Mensajes : 1
Fecha de inscripción : 19/11/2008
tipo de dato abstracto
1.- ¿Qué entendemos por los tipos de datos abstractos?
yo entiendoque los tipos de dato abstracto son es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
Con mucha frecuencia se utilizan los términos TDA y Abstracción de Datos de manera equivalente, y esto es debido a la similitud e interdependencia de ambos. Sin embargo, es importante definir por separado los dos conceptos.
Como ya se mencionó, los Lenguajes de Programación Orientados a Objetos son lenguajes formados por diferentes métodos o funciones y que son llamados en el orden en que el programa lo requiere, o el usuario lo desea. La abstracción de datos consiste en ocultar las características de un objeto y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa. Esto es similar a una situación de la vida cotidiana. Cuando yo digo la palabra “perro”, usted no necesita que yo le diga lo que hace el perro. Usted ya sabe la forma que tiene un perro y también sabe que los perros ladran. De manera que yo abstraigo todas las características de todos los perros en un solo término, al cual llamo “perro”. A esto se le llama ‘Abstracción’ y es un concepto muy útil en la programación, ya que un usuario no necesita mencionar todas las características y funciones de un objeto cada vez que éste se utiliza, sino que son declaradas por separado en el programa y simplemente se utiliza el término abstracto (“perro”) para mencionarlo.
En el ejemplo anterior, “perro” es un Tipo de Dato Abstracto y todo el proceso de definirlo, implementarlo y mencionarlo es a lo que llamamos Abstracción de Datos.
Un tipo de datos abstracto (TDA) se caracteriza por las siguientes propiedades :
1. Exporta un tipo.
2. Exporta un conjunto de operaciones. Este conjunto es llamado interface.
3. Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la estructura de datos del TDA.
4.Axiomas y precondiciones definen el ámbito de aplicación del TDA.
http://www.desy.de/gna/html/cc/Tutorial/Spanish/node4.html
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
Tipos de datos [editar]Los tipos de datos se clasifican según si son simples (primitivo), compuestos (construido) o una mera etiqueta (definido).
Tipos primitivos Los tipos primitivos son escalares, es decir, almacenan un único valor, como por ejemplo una cadena de texto o un entero. Los tipos primitivos más importantes son:
El tipo INTEGER se usa para representar números enteros.
El tipo OCTET STRING almacena una secuencia de bytes. De él se derivan tres subtipos:
DisplayString (para cadenas de caracteres ASCII)
OctetBitString (para cadenas de bits mayores de 32)
PhysAddress (para representar direcciones del nivel de enlace).
El tipo OBJECT IDENTIFIER para representar los identificadores de los objetos, es decir, la posición de un objeto dentro del árbol de la MIB.
El tipo BOOLEAN para valores que sólo pueden ser verdadero o falso.
El tipo NULL para representar la ausencia de valor.
Tipos construidos Los tipos construidos son tipos compuestos. Se usan para crear arrays y tablas. Los más importantes son:
El tipo SEQUENCE es una estructura de datos, es decir, una lista ordenada de tipos de datos diferentes. Es el tipo que se usa para almacenar una fila de una tabla.
El tipo SEQUENCE OF es una lista ordenada de tipos de datos iguales. Es similar al tipo "SEQUENCE", excepto que todos los tipos han de ser iguales. Es el tipo usado en tablas para almacenar todas las filas.
El tipo SET es equivalente al "SEQUENCE", pero la lista no está ordenada.
El tipo SET OF es equivalente al "SEQUENCE OF" pero la lista no está ordenada.
El tipo CHOICE es un tipo de datos en el que hay que elegir uno de entre los tipos disponibles en una lista. Por ejemplo, un tipo "Animal" podria ser una "CHOICE" entre los tipos "Perro", "Gato" o "Pez".
Tipos Definidos Son tipos derivados de los anteriores pero con un nombre más descriptivo. Los más importantes son:
IpAddress sirve para almacenar una dirección IP. Son 4 bytes y se define como "OCTET STRING (SIZE (4))".
Counter representa un contador que únicamente puede incrementar su valor y que cuando llega a su valor máximo, vuelve a cero. Se define como un entero sin signo, que sólo puede tomar valores positivos y el cero.
Gauge es como un indicador de nivel. Es un valor que puede incrementar o decrementar. Puede llevar asociados acciones a tomar en caso de que se superen unos umbrales. Un ejemplo es un medidor del ancho de banda medido en un determinado interfaz. Está definido como un entero de 32 bits.
TimeTicks es un tipo de datos usado para medir tiempos. Indica el número de centésimas de segundo que han transcurrido desde un determinado evento temporal. Es un entero de 32 bits.
Macros de ASN.1 [editar]Podemos crear nuevos tipos de ASN.1 usando macros.
Clases de datos [editar]Existen cuatro clases de datos, que etiquetan al resto de tipos de datos.
Universal: Para tipos de datos generales, como "Boolean", "Integer" y "Real".
Específica al contexto: Definidos para el contexto local en que se usan estos tipos.
Aplicación: Definidos para la aplicación específica.
Privada: Definidos por el usuario.
http://es.wikipedia.org/wiki/ASN.1
3.- ¿Qué son las interfaces en Java?
El concepto de Interface lleva un paso más adelante la idea de las clases abstractas. En Java una interface es una clase abstracta pura, es dcir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código). Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.
Una interface se declara:
interface nombre_interface {
tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . .
}
Por ejemplo:
interface InstrumentoMusical {
void tocar();
void afinar();
String tipoInstrumento();
}
Y una clase que implementa la interface:
class InstrumentoViento extends Object implements InstrumentoMusical {
void tocar() { . . . };
void afinar() { . . .};
String tipoInstrumento() {}
}
class Guitarra extends InstrumentoViento {
String tipoInstrumento() {
return "Guitarra";
}
}
Diferencias entre un interface y una clase abstracta
Un interface es simplemente una lista de métodos no implementados, además puede incluir la declaración de constantes. Una clase abstracta puede incluir métodos implementados y no implementados o abstractos, miembros dato constantes y otros no constantes.
Ahora bien, la diferencia es mucho más profunda. Imaginemos que Runnable fuese una clase abstracta. Un applet descrito por la clase MiApplet que moviese una figura por su área de trabajo, derivaría a la vez de la clase base Applet (que describe la funcionalidad mínima de un applet que se ejecuta en un navegador) y de la clase Runnable. Pero el lenguaje Java no tiene herencia múltiple.
En el lenguaje Java la clase MiApplet deriva de la clase base Applet e implementa el interface Runnable
http://www.arrakis.es/~abelp/ApuntesJava/Interfaces
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
4.- ¿Qué son las colecciones?
Java tiene desde la versión 1.2 todo un juego de clases e interfaces para guardar colecciones de objetos. En él, todas las entidades conceptuales están representadas por interfaces, y las clases se usan para proveer implementaciones de esas interfaces. Una introducción conceptual debe entonces enfocarse primero en esas interfaces.
La interfaz nos dice qué podemos hacer con un objeto. Un objeto que cumple determinada interfaz es “algo con lo que puedo hacer X”. La interfaz no es la descripción entera del objeto, solamente un mínimo de funcionalidad con la que debe cumplir.
Como corresponde a un lenguaje tan orientado a objetos, estas clases e interfaces están estructuradas en una jerarquía. A medida que se va descendiendo a niveles más específicos aumentan los requerimientos y lo que se le pide a ese objeto que sepa hacer.
Las operaciones básicas de una collection entonces son:
add(T)
Añade un elemento.
iterator()
Obtiene un "iterador" que permite recorrer la colección visitando cada elemento una vez.
size()
Obtiene la cantidad de elementos que esta colección almacena.
contains(t)
Pregunta si el elemento t ya está dentro de la colección.
iterator()
Obtiene un "iterador" para recorrer la colección
se utiliza una colección:
-Collection define métodos para tratar una colección genérica de elementos.
-Set Colección de elementos que no admite repetición.
-SortedSet es un Set ordenado según un criterio establecido.
-List admite elementos repetidos y mantiene el orden de inserción.
-Map Conjunto de pares, clave/valor, sin repetición de claves.
http://taringa.net/posts/ebooks-tutoriales/1646989/Colecciones-en-java:.html
[b]
yo entiendoque los tipos de dato abstracto son es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
Con mucha frecuencia se utilizan los términos TDA y Abstracción de Datos de manera equivalente, y esto es debido a la similitud e interdependencia de ambos. Sin embargo, es importante definir por separado los dos conceptos.
Como ya se mencionó, los Lenguajes de Programación Orientados a Objetos son lenguajes formados por diferentes métodos o funciones y que son llamados en el orden en que el programa lo requiere, o el usuario lo desea. La abstracción de datos consiste en ocultar las características de un objeto y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa. Esto es similar a una situación de la vida cotidiana. Cuando yo digo la palabra “perro”, usted no necesita que yo le diga lo que hace el perro. Usted ya sabe la forma que tiene un perro y también sabe que los perros ladran. De manera que yo abstraigo todas las características de todos los perros en un solo término, al cual llamo “perro”. A esto se le llama ‘Abstracción’ y es un concepto muy útil en la programación, ya que un usuario no necesita mencionar todas las características y funciones de un objeto cada vez que éste se utiliza, sino que son declaradas por separado en el programa y simplemente se utiliza el término abstracto (“perro”) para mencionarlo.
En el ejemplo anterior, “perro” es un Tipo de Dato Abstracto y todo el proceso de definirlo, implementarlo y mencionarlo es a lo que llamamos Abstracción de Datos.
Un tipo de datos abstracto (TDA) se caracteriza por las siguientes propiedades :
1. Exporta un tipo.
2. Exporta un conjunto de operaciones. Este conjunto es llamado interface.
3. Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la estructura de datos del TDA.
4.Axiomas y precondiciones definen el ámbito de aplicación del TDA.
http://www.desy.de/gna/html/cc/Tutorial/Spanish/node4.html
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
Tipos de datos [editar]Los tipos de datos se clasifican según si son simples (primitivo), compuestos (construido) o una mera etiqueta (definido).
Tipos primitivos Los tipos primitivos son escalares, es decir, almacenan un único valor, como por ejemplo una cadena de texto o un entero. Los tipos primitivos más importantes son:
El tipo INTEGER se usa para representar números enteros.
El tipo OCTET STRING almacena una secuencia de bytes. De él se derivan tres subtipos:
DisplayString (para cadenas de caracteres ASCII)
OctetBitString (para cadenas de bits mayores de 32)
PhysAddress (para representar direcciones del nivel de enlace).
El tipo OBJECT IDENTIFIER para representar los identificadores de los objetos, es decir, la posición de un objeto dentro del árbol de la MIB.
El tipo BOOLEAN para valores que sólo pueden ser verdadero o falso.
El tipo NULL para representar la ausencia de valor.
Tipos construidos Los tipos construidos son tipos compuestos. Se usan para crear arrays y tablas. Los más importantes son:
El tipo SEQUENCE es una estructura de datos, es decir, una lista ordenada de tipos de datos diferentes. Es el tipo que se usa para almacenar una fila de una tabla.
El tipo SEQUENCE OF es una lista ordenada de tipos de datos iguales. Es similar al tipo "SEQUENCE", excepto que todos los tipos han de ser iguales. Es el tipo usado en tablas para almacenar todas las filas.
El tipo SET es equivalente al "SEQUENCE", pero la lista no está ordenada.
El tipo SET OF es equivalente al "SEQUENCE OF" pero la lista no está ordenada.
El tipo CHOICE es un tipo de datos en el que hay que elegir uno de entre los tipos disponibles en una lista. Por ejemplo, un tipo "Animal" podria ser una "CHOICE" entre los tipos "Perro", "Gato" o "Pez".
Tipos Definidos Son tipos derivados de los anteriores pero con un nombre más descriptivo. Los más importantes son:
IpAddress sirve para almacenar una dirección IP. Son 4 bytes y se define como "OCTET STRING (SIZE (4))".
Counter representa un contador que únicamente puede incrementar su valor y que cuando llega a su valor máximo, vuelve a cero. Se define como un entero sin signo, que sólo puede tomar valores positivos y el cero.
Gauge es como un indicador de nivel. Es un valor que puede incrementar o decrementar. Puede llevar asociados acciones a tomar en caso de que se superen unos umbrales. Un ejemplo es un medidor del ancho de banda medido en un determinado interfaz. Está definido como un entero de 32 bits.
TimeTicks es un tipo de datos usado para medir tiempos. Indica el número de centésimas de segundo que han transcurrido desde un determinado evento temporal. Es un entero de 32 bits.
Macros de ASN.1 [editar]Podemos crear nuevos tipos de ASN.1 usando macros.
Clases de datos [editar]Existen cuatro clases de datos, que etiquetan al resto de tipos de datos.
Universal: Para tipos de datos generales, como "Boolean", "Integer" y "Real".
Específica al contexto: Definidos para el contexto local en que se usan estos tipos.
Aplicación: Definidos para la aplicación específica.
Privada: Definidos por el usuario.
http://es.wikipedia.org/wiki/ASN.1
3.- ¿Qué son las interfaces en Java?
El concepto de Interface lleva un paso más adelante la idea de las clases abstractas. En Java una interface es una clase abstracta pura, es dcir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código). Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecer un 'protocolo' entre clases.
Una interface se declara:
interface nombre_interface {
tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . .
}
Por ejemplo:
interface InstrumentoMusical {
void tocar();
void afinar();
String tipoInstrumento();
}
Y una clase que implementa la interface:
class InstrumentoViento extends Object implements InstrumentoMusical {
void tocar() { . . . };
void afinar() { . . .};
String tipoInstrumento() {}
}
class Guitarra extends InstrumentoViento {
String tipoInstrumento() {
return "Guitarra";
}
}
Diferencias entre un interface y una clase abstracta
Un interface es simplemente una lista de métodos no implementados, además puede incluir la declaración de constantes. Una clase abstracta puede incluir métodos implementados y no implementados o abstractos, miembros dato constantes y otros no constantes.
Ahora bien, la diferencia es mucho más profunda. Imaginemos que Runnable fuese una clase abstracta. Un applet descrito por la clase MiApplet que moviese una figura por su área de trabajo, derivaría a la vez de la clase base Applet (que describe la funcionalidad mínima de un applet que se ejecuta en un navegador) y de la clase Runnable. Pero el lenguaje Java no tiene herencia múltiple.
En el lenguaje Java la clase MiApplet deriva de la clase base Applet e implementa el interface Runnable
http://www.arrakis.es/~abelp/ApuntesJava/Interfaces
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/herencia/interfaces.htm
4.- ¿Qué son las colecciones?
Java tiene desde la versión 1.2 todo un juego de clases e interfaces para guardar colecciones de objetos. En él, todas las entidades conceptuales están representadas por interfaces, y las clases se usan para proveer implementaciones de esas interfaces. Una introducción conceptual debe entonces enfocarse primero en esas interfaces.
La interfaz nos dice qué podemos hacer con un objeto. Un objeto que cumple determinada interfaz es “algo con lo que puedo hacer X”. La interfaz no es la descripción entera del objeto, solamente un mínimo de funcionalidad con la que debe cumplir.
Como corresponde a un lenguaje tan orientado a objetos, estas clases e interfaces están estructuradas en una jerarquía. A medida que se va descendiendo a niveles más específicos aumentan los requerimientos y lo que se le pide a ese objeto que sepa hacer.
Las operaciones básicas de una collection entonces son:
add(T)
Añade un elemento.
iterator()
Obtiene un "iterador" que permite recorrer la colección visitando cada elemento una vez.
size()
Obtiene la cantidad de elementos que esta colección almacena.
contains(t)
Pregunta si el elemento t ya está dentro de la colección.
iterator()
Obtiene un "iterador" para recorrer la colección
se utiliza una colección:
-Collection define métodos para tratar una colección genérica de elementos.
-Set Colección de elementos que no admite repetición.
-SortedSet es un Set ordenado según un criterio establecido.
-List admite elementos repetidos y mantiene el orden de inserción.
-Map Conjunto de pares, clave/valor, sin repetición de claves.
http://taringa.net/posts/ebooks-tutoriales/1646989/Colecciones-en-java:.html
[b]
normanvilche- Mensajes : 1
Fecha de inscripción : 04/11/2008
Re: TEMA 1 Los TDA - tipos de datos abstractos
¿Qué entendemos por los tipos de datos abstractos?
Los tipos de datos son metodos o funciones quemétodos o funciones que son llamados en el orden en que el programa lo requiere, o el usuario lo desea. Consiste en ocultar las características de un objeto y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
¿De dónde se derivan los tipos de datos abstractos?
El concepto de tipo de dato abstracto (TDA, Abstract Data Types ), fue propuesto por primera vez hacia 1974 por John Guttag y otros, pero no fue hasta 1975 que por primera vez Liskov lo propuso para el lenguaje CLU.
El lenguaje Turbo Pascal fue determinante para la común aceptación de los TDAs con la introducción de las Units. Si bien estas no cumplen con las características básicas de un Tipo de dato Abstracto, como por ejemplo: la encapsulación de los datos. El lenguaje ADA pudo implementar exitosamente los TDAs con sus Packages. Vale recordar que estos dos últimos lenguajes soportan formalmente la Programación modular.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
¿Qué son las interfaces en Java?
Las interfaces Java son expresiones puras de diseño. Se trata de auténticas conceptualizaciones no implementadas que sirven de guía para definir un determinado concepto (clase) y lo que debe hacer, pero sin desarrollar un mecanismo de solución.
Se trata de declarar métodos abstractos y constantes que posteriormente puedan ser implementados de diferentes maneras según las necesidades de un programa.
Por ejemplo una misma interfaz podría ser implementada en una versión de prueba de manera poco óptima, y ser acelerada convenientemente en la versión definitiva tras conocer más a fondo el problema.
http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_9.htm
¿Qué son las colecciones?
las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
Agregue un ejemplo (código en Java de su respuesta)
Ej_Se utiliza una clase llamada Coleccion para implementar una enumeración de objetos de tipo Integer, y la clase principal que crea una instancia de Coleccion, itera sobre sus valores e imprime cada uno de ellos. Coleccion no contiene realmente ningún dato; simplemente devuelve la secuencia de enteros que ha construido.
import java.util.Enumeration;
class Coleccion implements Enumeration {
private int cnt = 0;
private boolean mas = true;
public boolean hasMoreElements() {
return( mas );
}
public Object nextElement() {
cnt++;
if( cnt > 4 )
mas = false;
return( new Integer( cnt ) );
}
}
class java816 {
public static void main( String args[] ) {
Enumeration enum = new Coleccion();
while( enum.hasMoreElements() ) {
System.out.println( enum.nextElement() );
}
}
}
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
Los tipos de datos son metodos o funciones quemétodos o funciones que son llamados en el orden en que el programa lo requiere, o el usuario lo desea. Consiste en ocultar las características de un objeto y obviarlas, de manera que solamente utilizamos el nombre del objeto en nuestro programa.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
¿De dónde se derivan los tipos de datos abstractos?
El concepto de tipo de dato abstracto (TDA, Abstract Data Types ), fue propuesto por primera vez hacia 1974 por John Guttag y otros, pero no fue hasta 1975 que por primera vez Liskov lo propuso para el lenguaje CLU.
El lenguaje Turbo Pascal fue determinante para la común aceptación de los TDAs con la introducción de las Units. Si bien estas no cumplen con las características básicas de un Tipo de dato Abstracto, como por ejemplo: la encapsulación de los datos. El lenguaje ADA pudo implementar exitosamente los TDAs con sus Packages. Vale recordar que estos dos últimos lenguajes soportan formalmente la Programación modular.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
¿Qué son las interfaces en Java?
Las interfaces Java son expresiones puras de diseño. Se trata de auténticas conceptualizaciones no implementadas que sirven de guía para definir un determinado concepto (clase) y lo que debe hacer, pero sin desarrollar un mecanismo de solución.
Se trata de declarar métodos abstractos y constantes que posteriormente puedan ser implementados de diferentes maneras según las necesidades de un programa.
Por ejemplo una misma interfaz podría ser implementada en una versión de prueba de manera poco óptima, y ser acelerada convenientemente en la versión definitiva tras conocer más a fondo el problema.
http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_9.htm
¿Qué son las colecciones?
las Colecciones o enumeraciones ofrecen una manera más completa y orientada a objetos para almacenar conjuntos de datos de tipo similar. Las Colecciones tienen su propia asignación de memoria y posibilidad de una nueva asignación para ampliarlas.
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
Agregue un ejemplo (código en Java de su respuesta)
Ej_Se utiliza una clase llamada Coleccion para implementar una enumeración de objetos de tipo Integer, y la clase principal que crea una instancia de Coleccion, itera sobre sus valores e imprime cada uno de ellos. Coleccion no contiene realmente ningún dato; simplemente devuelve la secuencia de enteros que ha construido.
import java.util.Enumeration;
class Coleccion implements Enumeration {
private int cnt = 0;
private boolean mas = true;
public boolean hasMoreElements() {
return( mas );
}
public Object nextElement() {
cnt++;
if( cnt > 4 )
mas = false;
return( new Integer( cnt ) );
}
}
class java816 {
public static void main( String args[] ) {
Enumeration enum = new Coleccion();
while( enum.hasMoreElements() ) {
System.out.println( enum.nextElement() );
}
}
}
http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte8/cap8-7.html
Gabriela Pimentel Suarez- Mensajes : 1
Fecha de inscripción : 05/11/2008
Datos Abstractos
1.- ¿Qué entendemos por los tipos de datos abstractos?
Definición (Tipo de Datos Abstracto) Un tipo de datos abstracto (TDA) se caracteriza por las siguientes propiedades :
1. Exporta un tipo.
2. Exporta un conjunto de operaciones. Este conjunto es llamado interface.
3. Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la estructura de datos del TDA.
4. Axiomas y precondiciones definen el ámbito de aplicación del TDA.
Definición (Tipo de Datos Abstracto) Un tipo de datos abstracto (TDA) se caracteriza por las siguientes propiedades :
1. Exporta un tipo.
2. Exporta un conjunto de operaciones. Este conjunto es llamado interface.
3. Las operaciones de la interface son el único y exclusivo mecanismo de acceso a la estructura de datos del TDA.
4. Axiomas y precondiciones definen el ámbito de aplicación del TDA.
Aida Hugo- Mensajes : 2
Fecha de inscripción : 04/11/2008
Re: TEMA 1 Los TDA - tipos de datos abstractos
1.- ¿Qué entendemos por los tipos de datos abstractos?
Los datos abstractos son aquellos que tienen operaciones definidas Ejemplo: Las funciones que contienen las calculadoras.
Los TDA se definen utilizando un conjunto especifico de operaciones que establecen las formas validas en las que podemos gestionar los elementos almacenados dentro de la estructura de datos. (Libro de estructura de la editirial PEARSON)
Un tipo de dato abstracto (TDA) o Tipo abstracto de datos (TAD) es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
n tipo de dato abstracto (TDA) o Tipo abstracto de datos (TAD) es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
Un TDA se denomina Clase, y los que heredan de una clase base se llaman clases derivadas o subclases; un TDA se deriva de una clase padre denominada superclase.
3.- ¿Qué son las interfaces en Java?
Un interfaz es una lista de acciones que puede llevar a cabo un determinado objeto. Sorpresa, ¿eso no eran los métodos que se definen en una clase? Casi, en una clase además de aparecer los métodos aparecía el código para dichos métodos, en cambio en un interfaz sólo existe el prototipo de una función, no su código.
Estructura de una interfaz
[modif.visibilidad] interface nombreInterfaz [extends listaInterfaces]
{
prototipo método1;
.....
prototipo método1;
}
4.- ¿Qué son las colecciones?
Una colección es una estructura de datos (en realidad, un objeto) que puede guardar referencia de otros objetos.
5.- Agregue un ejemplo (código en Java de su respuesta)
//import com.saforas.Pila;
public class DemoPila
{
public static void main (String [] Orlando)
{
Pila miPila = new Pila();
Character c1 = new Character ('A');
miPila.apilar(c1);
miPila.imprimir();
Character c2 = new Character ('B');
miPila.apilar(c2);
miPila.imprimir();
Character c3 = new Character ('C');
miPila.apilar(c3);
miPila.imprimir();
System.out.println("cima: "+miPila.datoCima());
miPila.desapilar();
miPila.imprimir();
}
}
//package com.saforas;
public class ExcepcionPilaVacia extends RuntimeException
{
public ExcepcionPilaVacia (String nombre)
{
super ("La pila " + nombre + " esta vacía");
}
}
//package com.saforas;
class NodoPila
{
Object dato;
NodoPila proximoNodo;
NodoPila (Object objeto)
{
this (objeto, null);
}
NodoPila (Object objeto, NodoPila prox)
{
dato = objeto;
proximoNodo = prox;
}
}
//package com.saforas;
public class Pila //APILAR
{
private NodoPila cima;
private NodoPila fin;
private String nombre;
public Pila (String cadena)
{
nombre = cadena;
cima = fin = null;
}
public Pila ()
{
this ("pila");
}
public synchronized boolean estaVacio()
{
return cima == null;
}
public synchronized void apilar (Object elementoAInsertar)
{
if(estaVacio())
cima = fin = new NodoPila (elementoAInsertar);
else
cima = new NodoPila (elementoAInsertar, cima);
}
public synchronized Object desapilar ()
throws ExcepcionPilaVacia
{
Object elementoARemover = null;
NodoPila nodoARemover = cima;
if (estaVacio())
throw new ExcepcionPilaVacia(nombre);
elementoARemover = cima.dato;
if (cima == fin)
cima = fin = null;
else
{
cima = cima.proximoNodo;
nodoARemover.proximoNodo = null;
}
return elementoARemover;
}
public synchronized Object datoCima()
{
return cima.dato;
}
public synchronized void anular()
{
cima = fin = null;
}
public synchronized void imprimir()
{
if (estaVacio())
{
System.out.println(nombre+" vacío");
return;
}
System.out.println ("La Pila "+nombre+" es: ");
NodoPila actual = cima;
while (actual != null)
{
System.out.println(actual.dato.toString()+" ");
actual = actual.proximoNodo;
}
System.out.println("\n");
}
}
Los datos abstractos son aquellos que tienen operaciones definidas Ejemplo: Las funciones que contienen las calculadoras.
Los TDA se definen utilizando un conjunto especifico de operaciones que establecen las formas validas en las que podemos gestionar los elementos almacenados dentro de la estructura de datos. (Libro de estructura de la editirial PEARSON)
Un tipo de dato abstracto (TDA) o Tipo abstracto de datos (TAD) es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
n tipo de dato abstracto (TDA) o Tipo abstracto de datos (TAD) es un modelo matemático compuesto por una colección de operaciones definidas sobre un conjunto de datos para el modelo.
http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto
2.- ¿De dónde se derivan los tipos de datos abstractos?
Un TDA se denomina Clase, y los que heredan de una clase base se llaman clases derivadas o subclases; un TDA se deriva de una clase padre denominada superclase.
3.- ¿Qué son las interfaces en Java?
Un interfaz es una lista de acciones que puede llevar a cabo un determinado objeto. Sorpresa, ¿eso no eran los métodos que se definen en una clase? Casi, en una clase además de aparecer los métodos aparecía el código para dichos métodos, en cambio en un interfaz sólo existe el prototipo de una función, no su código.
Estructura de una interfaz
[modif.visibilidad] interface nombreInterfaz [extends listaInterfaces]
{
prototipo método1;
.....
prototipo método1;
}
4.- ¿Qué son las colecciones?
Una colección es una estructura de datos (en realidad, un objeto) que puede guardar referencia de otros objetos.
5.- Agregue un ejemplo (código en Java de su respuesta)
//import com.saforas.Pila;
public class DemoPila
{
public static void main (String [] Orlando)
{
Pila miPila = new Pila();
Character c1 = new Character ('A');
miPila.apilar(c1);
miPila.imprimir();
Character c2 = new Character ('B');
miPila.apilar(c2);
miPila.imprimir();
Character c3 = new Character ('C');
miPila.apilar(c3);
miPila.imprimir();
System.out.println("cima: "+miPila.datoCima());
miPila.desapilar();
miPila.imprimir();
}
}
//package com.saforas;
public class ExcepcionPilaVacia extends RuntimeException
{
public ExcepcionPilaVacia (String nombre)
{
super ("La pila " + nombre + " esta vacía");
}
}
//package com.saforas;
class NodoPila
{
Object dato;
NodoPila proximoNodo;
NodoPila (Object objeto)
{
this (objeto, null);
}
NodoPila (Object objeto, NodoPila prox)
{
dato = objeto;
proximoNodo = prox;
}
}
//package com.saforas;
public class Pila //APILAR
{
private NodoPila cima;
private NodoPila fin;
private String nombre;
public Pila (String cadena)
{
nombre = cadena;
cima = fin = null;
}
public Pila ()
{
this ("pila");
}
public synchronized boolean estaVacio()
{
return cima == null;
}
public synchronized void apilar (Object elementoAInsertar)
{
if(estaVacio())
cima = fin = new NodoPila (elementoAInsertar);
else
cima = new NodoPila (elementoAInsertar, cima);
}
public synchronized Object desapilar ()
throws ExcepcionPilaVacia
{
Object elementoARemover = null;
NodoPila nodoARemover = cima;
if (estaVacio())
throw new ExcepcionPilaVacia(nombre);
elementoARemover = cima.dato;
if (cima == fin)
cima = fin = null;
else
{
cima = cima.proximoNodo;
nodoARemover.proximoNodo = null;
}
return elementoARemover;
}
public synchronized Object datoCima()
{
return cima.dato;
}
public synchronized void anular()
{
cima = fin = null;
}
public synchronized void imprimir()
{
if (estaVacio())
{
System.out.println(nombre+" vacío");
return;
}
System.out.println ("La Pila "+nombre+" es: ");
NodoPila actual = cima;
while (actual != null)
{
System.out.println(actual.dato.toString()+" ");
actual = actual.proximoNodo;
}
System.out.println("\n");
}
}
carmen ostaiza vera- Mensajes : 1
Fecha de inscripción : 12/11/2008
Página 3 de 5. • 1, 2, 3, 4, 5
Temas similares
» TEMA 1 Los TDA - tipos de datos abstractos
» Tipos de datos abstractos
» Los TDA-tipos de datos Abstractos
» Qué entendemos por los tipos de datos abstractos
» ¿Qué entendemos por los tipos de datos abstractos?
» Tipos de datos abstractos
» Los TDA-tipos de datos Abstractos
» Qué entendemos por los tipos de datos abstractos
» ¿Qué entendemos por los tipos de datos abstractos?
Página 3 de 5.
Permisos de este foro:
No puedes responder a temas en este foro.