Está en la página 1de 17

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

FACULTAD DE INGENIERIA DE SISTEMAS


E.A.P INGENIERÍA DE SISTEMAS

ALGORITMICA II

Semana 1
PROGRAMACION ORIENTADA A OBJETOS
TIPO ABSTRACTO DE DATOS

16 de Agosto de 2018

Luis Guerra Grados


CONTENIDO

• Temas generales del curso


• Conceptos clave
• Programación estructurada, Programación orientada a objetos (POO)
• Abstracción. Objeto.
• Tipo abstracto de datos-TAD: Clase
• Constructor
• Referencias
Temas Generales

 POO, objetos, TAD, clases


 Mensajes
 Relación entre clases
 Herencia
 Clase abstracta
 Polimorfismo
 Clases genéricas
 Excepciones
 Persistencia
Conceptos clave
Abstracción
 Herencia
 Atributos
 Clases y objetos  Instancia
 Clase base  Mensaje
 Clase derivada  Método
 Comportamiento  Operaciones
 Correspondencia entre  Polimorfismo
objetos
 Reutilización
 Encapsulamiento
 Estado
 Reusabilidad
 Función miembro  Sobrecarga
 TAD
 Variable de instancia
Programación Estructurada(P.E) – Programación Orientada a
Objetos

P.E P.O.O

 Las funciones tienen acceso  Modela objetos del mundo real.


ilimitado a datos globales, la Por ejemplo: personas, casas,
programación procedural da un autos, libros, etc.
bajo modelo del mundo real.
 Incorpora atributos (datos), y
comportamiento (funciones).
Datos globales Datos globales Datos globales
Atributos=Datos
Persona= color de cabello
estatura
color de ojos

Comportamiento=Funciones
Función Función Función Persona.CaminaconAceleracion(…)
Persona.CaminaconRetardo()
 Existe separación entre los “Combina en una sola entidad (objeto), los
datos y las funciones. datos y funciones”.
Abstracción
Proceso de representar la información en términos de su interfaz con el
usuario.
Propiedad que considera los aspectos más significativos de un
problema, expresando la solución en esos términos. Se representa con
el diseño de una clase que implementa la interfaz.

Objeto
Algo que se visualiza, utiliza, juega un papel, o un rol. Algo tangible,
abstracto, o describe un proceso.
Ejemplos: persona, casa, auto, equipo de fulbito, etc.
Sea el objeto: equipo de fulbito
atributos: jugadores, color de camiseta, partidos
jugados, tiempo de juego.
Tipo abstracto de dato (TAD)

Tipo de dato que consta de datos (estructuras de datos


propias) y operaciones que se pueden realizar sobre ellos. Un
TAD se compone de estructuras de datos y los procedimientos
o funciones que manipulan esas estructuras de datos.
TAD = Representación(datos) + Operaciones(funciones y procedimientos)

La estructura de un tipo abstracto de dato (por ejemplo una


clase), desde un punto de vista global, se compone de la
interfaz y de la implementación.
Modelo 1
Modelo 2 Interfaz pública
.
.
Modelo n

Método 1
Método 2
Implementación privada
.
.
Método n
Ejemplo de Tipo abstracto de dato (TAD): Clase

Describe los atributos de un objeto y su comportamiento


(operaciones o funciones o métodos).
Clase: es la implementación de un TAD

class Equipo_fulbito {
// atributos
entero jugadores;
cadena_caracteres color_camiseta;
entero partidos_jugados;
entero tiempo_de_juego;
// operaciones (métodos)
reemplazar_jugador();
entero tiempo_suplementario();
}
Instancias
Implementación de los objetos descritos en una clase.

Un objeto es una instancia o ejemplar de una clase.


Por ejemplo: alumno y profesor son instancias de la clase Persona.

Métodos
Las operaciones definidas para los objetos se denominan métodos.
Cuando se llama a una operación de un objeto se interpreta como el
envío de un mensaje a dicho objeto.
Clases y objetos
Clase, modelo o patrón para sus objetos. Los objetos definidos para una
clase comparten el marco fundamental de la clase.
Clase es la abstracción, objeto es una entidad real.
En la naturaleza de una clase, se consideran dos niveles de definición:
abstracto y el de instrumentación.
Nivel abstracto:
La clase se representa como una interfaz, describiendo los métodos,
que realizan sus objetos.
La vista abstracta de la clase como una interfaz, proporciona una vista
de salida mientras oculta su estructura interna y detalles de
comportamiento.
Nivel de instrumentación:
Vista interior de la clase, mostrando la organización de los datos en dos
secciones principales: pública, privada.
public, private, protected

Las palabras :
public, private, protected
son palabras reservadas.

Al definir una clase, todos los miembros que no necesitan


accederse desde el exterior, pueden ser declarados como
privados. Así facilita la programación modular al ocultar los
detalles de la clase.
Crear objetos
clase Persona {
// Ej. atributos privados
String nombre;
int edad;

//Ej. métodos publicos:


publico AsignarNombre(String nom){
nombre=nom; }
publico AsignarEdad(int e){ edad=e; }
publico Caracters ObtenerNombre(){…
}
publico entero ObtenerEdad(){
return edad;
}
…………………….
}
Crear objetos
En el método principal se declara los objetos, y se llama a las
funciones miembros de la clase, utilizando el operador “.”.

Principal () {
Persona alumno=new Persona();
Persona profesor=new Persona();
alumno.AsignarNombre("Miguel");
alumno.AsignarEdad(20);
profesor.AsignarNombre("José");
Escribir("Nombre del alumno:"+alumno.ObtenerNombre());
Escribir("edad del alumno:"+alumno.ObtenerEdad());
Escribir("Nombre del profesor:"+profesor.ObtenerNombre());
}
Constructor

Un constructor es una función miembro especial que


construye objetos.
Un constructor es llamado para asignar espacio a un
objeto, asignar valores a sus miembros datos y realizar
tareas iniciales para un nuevo objeto.
Tiene el mismo nombre que la clase, y puede tener
parámetros, pero no puede devolver valores. Si no se
define un constructor para una clase el compilador
generara un constructor por defecto.
Constructor
clase cRectangulo {
// privado
float x1,y1,x2,y2;
// publico
//constructor
cRectangulo() {
x1=0; y1=0; x2=0; y2=0;
}
//constructor
publico cRectangulo(float ex1, float ey1,float ex2, float ey2) {
x1=ex1; y1=ey1;
x2=ex2; y2=ey2;
}
// Otros métodos
…….}
REFERENCIAS
[1]. Joyanes, Luis; Zahonero, Luis. Programación en C, C++,
Java y UML. 2010. Edit. Mc Graw Hill. México.

[2]. Deitel & Deitel. Java como programar. 2008. Edit. Pearson
Prentice Hall. México.

[3]. Francisco, Javier Ceballos. Java 2. Curso de Programación.


2000 . Edit. Alfa Omega Ra-ma

[4]. Douglas Bell, Mike Parr. Java para estudiantes. 2003. Edit.
Pearson.

[5]. Jhon Zukowski. Java 2. 2003. Edit. Anaya Multimedia.

[7]. Fain, Yakov. Programación Java. 2011. Edit. Anaya. España.


PREGUNTAS

También podría gustarte