SlideShare una empresa de Scribd logo
1 de 52
Descargar para leer sin conexión
1
PROGRAMACIÓN ORIENTADA
A OBJETOS
SCD1025
3:00 – 4:00 P.M
Alumno: Joaquín Martínez Benjamín
No. Control: 11161009
Periodo escolar: Ene-jun/2013
INGENIERÍA EN SISTEMAS
COMPUTACIONALES
2
PROGRAMACIÓN ORIENTADA A OBJETOS.
OBJETIVO GENERAL DE LA MATERIA:
Diseñar e implementar objetos de programación que permiten resolver situaciones reales y de
ingenierías.
Unidad 1Introduccion al paradigma de la programación orientada a objetos.
1.1Elementos del modelo de objetos, clases, abstracción, modularidad, encapsulamiento,
herencia, polimorfismo.
1.2Lenguaje de modelado unificado, diagrama de clases.
Unidad 2 Clases y objetos
2.1 Declaración de clases: atributos, métodos, encapsulamiento.
2.2 Instanciación de una clase.
2.3 Referencia al objeto actual.
2.4 Métodos: Declaración, mensajes, paso de parámetros, retorno de valores.
2.5 Constructores y destructores: declaración uso y aplicación.
2.6 Sobrecarga de métodos.
2.7 Sobrecarga de operadores, concepto y utilidad, operadores unarios y binarios.
Unidad 3 Herencia
3.1 Definición; clase base, clase final.
3.2 Clasificación; herencia simple y herencia múltiple.
3.3 Reutilización de miembros heredados.
3.4 Referencia al objeto de la clase base.
3.5 Constructores y destructores en clases derivadas.
3.6 La definición de métodos en clases derivadas.
Unidad 4 Polimorfismo
4.1 Definición.
4.2 Clases abstractas; definición, métodos abstractos, implementación de clases abstractas y
modelado.
4.3 Interfaces: Definición, implementación de interfaces, herencia de interfaces.
4.4 Variables polimórficas (plantillas); definición uso y aplicación.
4.5 Reutilización de código.
3
Unidad 5 Excepciones
5.1 Definición.
5.2 Tipos de excepciones.
5.3 Propagación de excepciones.
5.4 Gestión de excepciones; manejo y lanzamiento.
Unidad 6 Flujos y archivos
6.1 Definición.
6.2 Clasificación; archivos de texto y binarios.
6.3 Operaciones básicas y tipos de accesos.
6.4 Manejo de objetos.
Fuentes de información
“Programación orientada a objetos”
Luis Joyanes Aguilar. Mc Graw Hill
“Java 2 Fundamentos de programación”
Francisco Javier Ceballos. Editorial Alfa Omega.
“Como programar en Java”.
Deitel & Deitel. Prentice Hall.
“Programación en Java”
Herbert Schih. Prentice Hall.
Evaluación
Examen 50% teórico 50% practico.
Asistencia obligatoria
Participación
Tareas
Practicas
*Para derecho a examen tener 95 % de asistencia, tener puntos en participación, tareas y
prácticas.
4
PROGRAMACIÓN ORIENTADA A OBJETOS
1.1Elementos del modelo de objetos, clases, abstracción, modularidad, encapsulamiento, herencia,
polimorfismo.
Clase: Una clase es una plantilla utilizada para construir o definir un objeto.
Atributos: Características propias del objeto.
Métodos de acceso para un atributo: public
private
protected
Métodos: Conjunto de acciones que realiza o responde el objeto.
Objeto: Es la instanciación de una clase, todos los objetos son de una clase particular.
Abstracción: Captar características esenciales de un objeto omitiendo características secundarias.
Modularidad: Consiste en subdividir el problema en partes pequeñas para facilitar su programa y
su mantenimiento.
Encapsulamiento: Aquella propiedad que permite ver a un objeto como una caja negra en la que
se ha dado toda la información relacionada con dicho objeto. Esto nos permite manipular los
objetos como unidades básicas permaneciendo junta su estructura interna.
Herencia: Es una propiedad en la que podemos heredar métodos y atributos de otra clase, de esta
forma se garantiza la reutilización de código.
*Accesos
+ public: Se heredan métodos y atributos de otros paquetes y clases del mismo paquete.
# protected: Se pueden heredar clases del mismo paquete y no de otros paquetes.
_ private: Se elimina la posibilidad de la herencia.
 Estos accesos definen la visibilidad de los datos.
5
Polimorfismo: Esta característica permite implementar múltiples formas de un mismo método,
dependiendo cada una de ellas de la clase sobre la que se realice la implementación. Se puede
acceder a una variedad de métodos distintos, todos con el mismo nombre pero con distintos tipos
y formas de argumento.
Ejemplo de polimorfismo:
6
1.2Lenguaje de modelado unificado, diagrama de clases.
El lenguaje UML (Lenguaje de modelo unificado)
Es un lenguaje gráfico utilizado para representar la relación entre objetos, así como casos de uso,
asociación, agregación… de todo sistema, pero no muestra la lógica algorítmica de la solución del
sistema.
Uno de los temas importantes del UML es la clase.
< nombre de la clase>
<atributos>
<métodos u operación>
Ejemplo: Clase cuenta
Operaciones
-Depositar
-Girar
-Balance
Atributos:
(+): El atributo es accesible desde todos lados (public).
(-): El atributo es accesible solo para los métodos de la clase ( private ).
(#): No es accesible desde fuera de la clase, pero si por métodos de la clase que se deriven de ella.
(protected).
Cuenta: int
Cuenta balance: int
+ depositar ( monto: int ): void
+girar (monto: int):boolean
+balance (): int
Características validas que dan significado a cada dato.
No debe usar símbolos especiales ( %,+,-,*,ñ,á,etc).
Los métodos pueden ser simples (void) o parame
trizados. Los nombres no pueden ser palabras
reservadas o con símbolos especiales.
7
Métodos:
public: El método es accesible desde todos lados .
private: Solo son accesibles desde dentro de la clase.
protected: El método no será accesible desde fuera de la clase, pero si por métodos de la clase y
otros métodos que se deriven.
8
Unidad 2 Clases y objetos
Arreglo: Conjunto homogéneo, finito y ordenado que comparten un mismo nombre.
(lista o vector)
Int lista [10]
0 1 2 3 4 5 6 7 8 9
*Implementar una lista de 20 elementos
9
*Listas
*Arreglos paralelos
Problema: Se tiene una lista de 10 alumnos con sus respectivos datos.
-clave
-nombre
-materia
-promedio
Realizar un programa para imprimir el porcentaje de alumnos de programación1, estructura de
datos y lenguajes 2.
Clave Nombre Materia Promedio
Son un conjunto de arreglos verticales cada uno con un tipo de datos que comparten una longitud.
0
1
.
.
.
n
0
1
.
.
.
n
0
1
.
.
.
n
0
1
.
.
.
n
Clave Nombre Materia promedio
10
11
2.1Declaración de clases
12
2.1
-Métodos, atributos
-Encapsulamiento
2.2 Instanciación de una clase
2.3 Referencia al objeto actual
En poo para referirse al objeto actual, se utiliza el método fijo.
13
*El método this es usado en programación orientada a objetos para referencia los atributos del
objeto y hacerlos distintos de un método.
2.4 Métodos
Simples void: Estos trabajan en datos globales
Parametrizados: Son los que devuelven y reciben valores
public int// tipo valor de salida// método (int x, int y, int z) // parámetros de entrada
return;
Ejemplo:
public tipo metodo (arg1,arg2,arg3...)
{
return tipo;
}
Realizar un programa para leer un número <= 12 e imprimir
su factorial
14
Métodos que devuelven y reciben valores.
Realizar un programa para calcular la depreciación de un bien utilizando la línea recta, el cual
consiste en dividir el valor del bien entre el número de años, el valor resultante es lo que
devolverá dicho bien al año. El programa mostrara una tabla como la siguiente.
Año Capital inicial Deposito Capital final
1 10 000 1000 9 000
2 9 000 1000 8 000
3 8 000 1000 7 000
15
16
2.5 Destructores en java
Los destructores son métodos que se llaman automáticamente por el compilador cuando un
programa termina. A diferencia de c, c++, java no tiene un destructor explicito, ya que en lugar de
la función delete () de c, se usa System.cb (), biene Collection .
backage, ( Recolector de Basura).
El método cb () de system es innecesario ya que java al perder la referencia a un objeto es
eliminado automáticamente de la memoria.
Sobrecarga de operadores... investigar si existe......
17
2.6 Sobrecarga de métodos
Consiste en colocar múltiples métodos con el mismo nombre pero con distintos parámetros.Es una
forma de diseñar métodos que simulen el polimorfismo.
Diseñar un programa para calcular el área de cualquier figura. Antes de realizar el cálculo el
programa mostrara con letras grandes el nombre de la figura.
18
19
Una empresa x dedicada a la compraventa de productos básicos desea un programa para
imprimir los datos de venta de 3 productos básicos :
maíz
frijol
arroz
El programa debe imprimir lo siguiente:
a) tabla de venta anual de los tres productos
b) que producto se vendió mas en el año
c) imprimir todos los totales de ventas mensuales y por productos.
MAIZ FRIJOL ARROZ TOTAL MENSUAL
ENERO
FEBRERO
MARZO
…
TOTALES . . . . . . . . .
20
21
22
RESUMEN GENERAL
-clases-métodos-atributos-método main-paquetes.
Paquetes: los paquetes es una carpeta donde se almacenan las clases de un proyecto, todas las
clases de un paquete tiene una relación.
Java es un lenguaje ordenado, crea las clases en un lugar adecuado al proyecto a realizar.
Todas las clases deben estar dentro de un paquete.
Los paquetes son necesarios para que java ligue las librerías al paquete del proyecto.
public class miclase
{
// Declaración de atributos
private int [] lista;
public String nombre;
public double estatura;
public miclase(){
JtextArea area= new JtextArea();
JOptionPane.showMessageDialog(null,"Constructor vacio"); }
public miclase(int a[],nom,estat)
{ lista=a;
nombre=nom;
estatura= estat;
JtextArea area= new JtextArea();
}
public static void main (String []args){
int a[]={10,20,30,40};
miclase Obj = new miclase();
miclase Obj= new miclase(a,"Juan",1.56);
for (int i=o; i<3;i++)
{area.append (a [i] + "n");}
area.append (nombrre +"n"+estatura + "n");
JOptionPane.showMessageDialog (null,area);
____________________________________________________________________________
area =newJTextArea();
area.append ();
area.setFont (new Font ("Arial" , 180));
area.setColor (new color (blue));
______________________________________________________________________________
public int [] arreglo ----- formato java
public int arreglo [];___________________ formato c,c++
_______________________________________________________________________________
23
Unidad 3 Herencia
3.1 Definición, clase base, clase final.
Es una de las propiedades que permiten la reutilización de código.
Solo cuando los métodos y atributos son públicos o protegidos.
24
3.2 Clasificación; herencia simple y herencia múltiple.
Herencia simple: Una clase hereda características y comportamientos de otra clase.
Java
Herencia múltiple:
-vertical ------ Existe
-horizontal- No existe
25
26
Aplicación básica de la herencia.
3.3 Reutilización de miembros heredados
¿Qué es la reutilización de código?
Es que por medio de la herencia se utiliza código java de clases previamente desarrollados.
Ejemplo:
Problema 1: Desarrollar un programa para determinar si un número es o no primo leído por el
teclado.
Problema 2: Imprimir todos los primos entre 2 y 100
Problema 3: obtener la suma de las siguientes expresiones.
27
28
29
3.4 Referencia al objeto de la clase base.
// Problema: Realizar un programa para depreciar un bien usando el método de la
// línea recta, el importe en depreciar el bien en un número de años.
//dividiendo el capital entre el número de años, el resultado es la cantidad, depreciada cada año.
30
31
3.5 Constructores y destructores en clases derivadas.
32
3.6 Redefinición de miembros heredados.
A veces es importante redefinir los miembros heredados con la necesidad de darles a algunos
métodos nuevos comportamientos.
Para llamar el método de la superclase se usa el método super y el método redefinido con su
propio nombre.
Usando la herencia simple usar un programa para calcular lo siguiente:
Imprimir una tabla de divisores de los 20 primeros números naturales definiendo en cada una de
las tablas de la siguiente forma:
1 2 3 4 5 6 7
1 x
2 x
3 x
4 x x
5 x
6 x x
7 x cuantos divisores ,si es o no primo
33
Unidad 4 Polimorfismo
4.1 Definición
Esta característica permite implementar múltiples formas de un mismo método, dependiendo
cada una de ellas de la clase sobre la que se realice la implementación. Se puede acceder a una
variedad de métodos distintos, todos con el mismo nombre pero con distintos tipos y formas de
argumento.
4.2 Clases abstractas; definición, métodos abstractos, implementación de clases abstractas y
modelado.
Clases abstractas
Son clases genéricas que se crean con la intención de usar sus atributos y métodos donde la
subclase se encargara de los detalles de cada método. De una clase abstracta no puede crearse un
objeto. Si no que solo son creadas para ser derivadas de otras clases, donde dentro de cada clase
se redefinirá cada uno de sus métodos.
34
Aplicaciones de las clases abstractas
Problema: Usando clases abstractas desarrollar un programa para calcular una tabla de
depreciación por la suma de los números de años.
35
36
4.3 Interfaces: Definición, implementación de interfaces, herencia de interfaces.
Interfaces:
Es un dispositivo o un sistema utilizado por entidades inconexas. Por ejemplo un control remoto, el idioma
inglés, etc.
En java una interfaz es un dispositivo que permite interactuar a objetos no relacionados entre sí.
En java básicamente una interfaz se define como un conjunto de mensajes que se pueden aplicar a muchas
clases de objetos a las que cada una de ellas debe responder de una forma adecuada.
Ejemplo
public interface Serie
int metodo1 ();
void metodo2 ();
void metodo3();
public class Calculadora implements Serie
{
// datods
public calcularDatos ();
}
public inte metodo1(){
// cuerpo del metodo
//realiza lo que el metodo 1 realiza en esta clase
}
public void metodo2() {
// cuerpo del metodo
//realiza lo que el metodo 1 realiza en esta clas
public void metodo3() {
37
}
public static void main (String [] args ) {
}
}
publi class elementos implements Serie
// Datos
public Elementos () {
}
public int metodo1(){
// cuerpo del metodo
//realiza lo que el metodo 1 realiza en esta clas
}
38
39
40
Aplicación de las interfaces
Todos los datos declarados de una interface pueden ser de tipo final, abstracto o estático.
Usar una interfaz para calcular la transpuesta de una matriz.
import javax.swing.*;
public class Transpuesta implements Matriz {
public JTextArea area;
public int b [][];
public Transpuesta () {
area = new JTextArea ();
b = new int [4][4];
}
public void calcular () {
for (int j=0; j<4; j++) {
for (int k = 0; k <4 ; k++ ) {
b [j][k]= a[k][j];
}
}
}
public void imprimir () {
area.append ("El arreglo original es: n");
for (int i =0; i<4; i++ ) {
for (int j=0 ;j<4;j++) {
area.append (a [i][j] + "t");
41
}
area.append ("n");
}
area.append ("nn Matriz transpuesta: n");
for ( int i=0 ; i<4; i++ ) {
for ( int j =0; j<4 ; j++) {
area.append ( b[i][j]+"t");
}
area.append ("n");
}
JOptionPane.showMessageDialog ( null,area) ;
} // cierra metodo
public static void main (String [] args ) {
Transpuesta Obj= new Transpuesta () ;
Obj.calcular () ;
Obj.imprimir ();
}
} // cierra clase.
public class Table extends Transpuesta {
public Table () {
super ();
}
public void llamar (){
super.calcular();
super.imprimir();}
public static void main (String [] args ) {
Table Obj= new Table();
Obj.llamar();
}
}
42
import javax.swing.*;
public class Eleccion implements Partidos {
public JScrollPane barra;
public JTextArea area;
public int total [] ;
public int mayor;
public Eleccion () {
mayor=0;
43
area = new JTextArea (15,15);
barra = new JScrollPane (area) ;
}
public void votando (){
int distrito=0;
int partido=0;
int sumaPri=0;
int sumaPan=0;
int sumaPrd=0;
for ( int i = 0; i <= 510000; i++) {
partido = (int) (Math.random ()*2);
distrito= (int) (Math.random () * 10);
if (partido==0){ pri [distrito]= pri[distrito]+1; sumaPri++;}
if (partido==1){ pan [distrito]= pan [distrito] +1;sumaPan++;}
if (partido==2){ prd [distrito]= prd [distrito] +1;sumaPrd++;}
}
pri[10]=sumaPri; prd[10]= sumaPrd; pan [10]=sumaPan;
}
public void ganador () {
area.append ("Pri tPantPrdtTotalesn");
for ( int i=0; i<=10; i++){
area.append (pri [i]+"t"+pan [i]+"t"+prd [i] + "n");
}
int g=0;
mayor=pri[10];
if (pan[10]>mayor){
mayor=pan [10];
g=1;
}
if (prd [10] > mayor){
mayor=prd [10];
g=2;
}
44
if(g==0){area.append( "El ganador es el Pri con"+ pri[10]+"votos");}
if(g==1){area.append( "El ganador es el Pan con"+ pan[10]+"votos");}
if(g==2){area.append( "El ganador es el Prd con"+ prd[10]+"votos");}
JOptionPane.showMessageDialog (null,barra);
}
public static void main (String [] args ) {
Eleccion Obj = new Eleccion();
Obj.votando();
Obj.ganador();
}
}
45
import javax.swing.*;
public class Tabla implements Pitagoras {
public JScrollPane barra;
public JTextArea area;
public int arreglo[][];
int fila;
int columna;
public Tabla () {
int fila=0;
int columna=0;
arreglo= new int [11][11];
area = new JTextArea (40,40);
barra = new JScrollPane (area) ;
}
public void crearTabla () {
for ( fila=1; fila <=10; fila++) {
for (columna=1; columna<=10; columna++){
46
arreglo[fila][columna]= fila*columna;
area.append (arreglo[fila][columna]+ "t");}
area.append ("n");
}JOptionPane.showMessageDialog (null,barra);
}
public static void main (String [] args ){
Tabla Obj= new Tabla ();
Obj.crearTabla ();
}
}
47
Unidad 5 Excepciones
Es cuando en la ejecución de un programa sucede un error, entonces se dice que las excepciones
son un conjunto de instrucciones para atrapar esos errores y taparlos adecuadamente para evitar
la parada de la ejecución anormal del programa.
Con una excepción lanzada, si el error ocurre el programa sigue funcionando como si no ocurriese
nada.
Ejemplo:
Para tratar excepciones se utilizan 5 palabras claves: try, catch, throw, throws y finally.
int a=10;
int b=0;
try {
int s= a/b;
}
catch (ArithmeticException){
System.out.println ("Division por
cero); }
area.append ( "El valor es " +s+ "n");
}
public void dividir (int a, int b){
int valor= a/b;
area.append ("El valor es " + valor);
}
48
int num[1]= new int [2];
int a=10,b=0;
try { num [4]=10;
int s=a/b;
}
catch (Array IndexOutOf Bounds Exception except) {
System.out.println ( "Arreglo fuera de limite n");
}
catch (Arithmetic Exception except )
{ System.out.println ("No se puede dividir entre cero")
}
String cad= campotext.getText ();
int num= Integer.parseInt( cad );
try {
String cad= campotext.getText();
int num= Integer.parseInt ( cad);
catch (NumberFormatException except ){
JOptionPane.showMessageDialog (null, "Dato incorrecto");
}
49
Unidad 6. FLUJOS Y ARCHIVOS
Archivos Archivos: Es un conjunto de datos
almacenados en un formato
determinado.
Datos
Imagenes
Musica
Video
Texto
Alfanumericos
Archivos de datos: Es una colección de registros lógicamente relacionados que tienen una
aplicación común.
Registro: Es una entidad formada por un conjunto de campos formando un tuplax, es un ente
dependiente del conjunto y accesado con forma individual.
public in clave;
public String nombre;
public String direccion;
public String ciudad;
public String estado;
clave nombre direccion ciudad estado
En java los campos de un archive se declaran como atributos de una clase a diferencia de c, c++
que declaran como un tipo RECORD.
50
¿Qué es un campo? Es una característica de un objeto y es una parte fundamental de un archivo
de datos.
Es una unidad mínima de un registro.
Existen distintos tipos de campo:
Campos claves: Son utilizados para aplicar una búsqueda, para localizarlo en el archivo.
Estos campos también reciben el nombre de llaves de identificación. Tambien reciben el nombre
de campos primarios.
Campos secundarios: Son campos cuya información se repite, fusiona con otros campos para
forma una segunda alternativa de búsqueda.
Ejemplos: Fechas de nacimiento, código postal, fecha de filiación, dirección.
Todos los sistemas de información aplican entre los datos o tablas de archivos un conjunto de
operaciones las cuales son fundamentales para tener actualizados los datos del sistema en
cualquier momento.
Estas operaciones son:
Creacion de las tablas- Definir cada uno de los componentes de las tablas.
Actualizacion :
Insercion de un nuevo registro.
Eliminacion de registro.
Modificaciones de registro.
Consulta
-Busqueda
-Visualizacion general
-Generacion de reportes
Mantenimiento.
51
Operaciones sobre archivos
-Creación del archivo
Define los componentes
private int clase
private String nombre
Definir el nombre interno del archivo
private DatoOutputStream archivo;
Definir un nombre de archivo, para detectar si existe el archivo.
File fichero;
fichero= new File ("Ventana del");
if ( fichero.existe()){
ejecutar el archivo}
Escribir los campos del archivo .
archivo.writeInt (clave);
Para escribir los campos de se usan los siguientes métodos;
writeInt () // Escribe un entero
writeDouble()
writeFloat()
writeLog
writeChar()
writeUTF()
WriteChars() writeByte()
52
El método que escribe un registro es:
void insertar ( int clave, String nombre ){
try{
archivo= new DataOutputString ( new PutferedOutput Stream (new FileOutput Stream
("alumnos.dat",true));
archivo.writeInt (clave);
archivo.writeUTF (nombre );
}
catch (IOException e ){
System.out.println ("error"+ e.getMessage ());
}
finally {
try{
archivo.clase ();
}
catch (IOException ff )
{
System.out.println ( "No se puede cerrar el archivo ");
}
}

Más contenido relacionado

La actualidad más candente

Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooJosé Antonio Sandoval Acosta
 
Tema 1 2_poo
Tema 1 2_pooTema 1 2_poo
Tema 1 2_poodemon_628
 
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetosClara Patricia Avella Ibañez
 
Programación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevProgramación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevjtk1
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos JavaC_QUENGUAN
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POOgueritamala
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemasjorgecaruci
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Whaleejaa Wha
 
Copia de copia de e.si.m.l.p
Copia de copia de e.si.m.l.pCopia de copia de e.si.m.l.p
Copia de copia de e.si.m.l.pBangMiriam3003
 
8b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 18b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 1Clara Patricia Avella Ibañez
 
E.si.m.l.p
 E.si.m.l.p E.si.m.l.p
E.si.m.l.pAyhli123
 
unidad 3
unidad 3unidad 3
unidad 3deniizz
 

La actualidad más candente (18)

Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
 
Uml java
Uml javaUml java
Uml java
 
Tema 1 2_poo
Tema 1 2_pooTema 1 2_poo
Tema 1 2_poo
 
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos
 
Programación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prevProgramación orientada a objetos con c++ prev
Programación orientada a objetos con c++ prev
 
Poo Programacion Orientada A Objetos Java
Poo   Programacion Orientada A Objetos   JavaPoo   Programacion Orientada A Objetos   Java
Poo Programacion Orientada A Objetos Java
 
Uni3m
Uni3mUni3m
Uni3m
 
Fundamentos de POO
Fundamentos de POOFundamentos de POO
Fundamentos de POO
 
Diseño de Sistemas
Diseño de SistemasDiseño de Sistemas
Diseño de Sistemas
 
POO
POOPOO
POO
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
PRESENTACION
PRESENTACIONPRESENTACION
PRESENTACION
 
Copia de copia de e.si.m.l.p
Copia de copia de e.si.m.l.pCopia de copia de e.si.m.l.p
Copia de copia de e.si.m.l.p
 
8b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 18b Curso de POO en java - paso de diagrama clases a java 1
8b Curso de POO en java - paso de diagrama clases a java 1
 
E.si.m.l.p
 E.si.m.l.p E.si.m.l.p
E.si.m.l.p
 
unidad 3
unidad 3unidad 3
unidad 3
 
e.si.m.l.p
 e.si.m.l.p e.si.m.l.p
e.si.m.l.p
 

Similar a Programación orientada a objetos

Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevjtk1
 
Anon metodologia de la programacion orientada a objetos con c++
Anon   metodologia de la programacion orientada a objetos con c++Anon   metodologia de la programacion orientada a objetos con c++
Anon metodologia de la programacion orientada a objetos con c++ratasquerosaXX
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosLex Marin
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosEliecer Suarez
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02luisortiz
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POOLibertad25
 
Programacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfProgramacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfSantiagoValenzuela24
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IEKaren Olan
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definicionesBoris Salleg
 
Análisis y diseño orientado a objetos
Análisis y diseño orientado a objetosAnálisis y diseño orientado a objetos
Análisis y diseño orientado a objetosChristian Leon
 
Practica retro java 28102013
Practica retro java 28102013Practica retro java 28102013
Practica retro java 28102013Edgar Rosas
 
Paradigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosParadigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosAlberto Blumberg
 

Similar a Programación orientada a objetos (20)

Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
 
Anon metodologia de la programacion orientada a objetos con c++
Anon   metodologia de la programacion orientada a objetos con c++Anon   metodologia de la programacion orientada a objetos con c++
Anon metodologia de la programacion orientada a objetos con c++
 
Unidad1 y 2
Unidad1 y 2Unidad1 y 2
Unidad1 y 2
 
Guia1 pii
Guia1 piiGuia1 pii
Guia1 pii
 
Analisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetosAnalisis y diseño orientado a odjetos
Analisis y diseño orientado a odjetos
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado Objetos
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Poo
PooPoo
Poo
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POO
 
1 Paradigma Objetos
1 Paradigma Objetos1 Paradigma Objetos
1 Paradigma Objetos
 
Programacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdfProgramacion Orientada Objetos.pdf
Programacion Orientada Objetos.pdf
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Modelamiento con uml definiciones
Modelamiento con uml definicionesModelamiento con uml definiciones
Modelamiento con uml definiciones
 
Análisis y diseño orientado a objetos
Análisis y diseño orientado a objetosAnálisis y diseño orientado a objetos
Análisis y diseño orientado a objetos
 
Practica retro java 28102013
Practica retro java 28102013Practica retro java 28102013
Practica retro java 28102013
 
Paradigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a ObjetosParadigma de Programación Orientado a Objetos
Paradigma de Programación Orientado a Objetos
 
Prog oo con_java
Prog oo con_javaProg oo con_java
Prog oo con_java
 
Diagrama de casos
Diagrama de casosDiagrama de casos
Diagrama de casos
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 

Más de Benjamín Joaquín Martínez

Más de Benjamín Joaquín Martínez (20)

Sistemas de detección de intrusiones.pdf
Sistemas de detección de intrusiones.pdfSistemas de detección de intrusiones.pdf
Sistemas de detección de intrusiones.pdf
 
Portafolio ingles.pdf
Portafolio ingles.pdfPortafolio ingles.pdf
Portafolio ingles.pdf
 
Tabla de llamadas para linux x86_64 bits.pdf
Tabla de llamadas para linux x86_64 bits.pdfTabla de llamadas para linux x86_64 bits.pdf
Tabla de llamadas para linux x86_64 bits.pdf
 
Sistema de registro con php
Sistema de registro con phpSistema de registro con php
Sistema de registro con php
 
compiladores6Benjamin133467.pdf
compiladores6Benjamin133467.pdfcompiladores6Benjamin133467.pdf
compiladores6Benjamin133467.pdf
 
Compiladores5_Benjamin133467.pdf
Compiladores5_Benjamin133467.pdfCompiladores5_Benjamin133467.pdf
Compiladores5_Benjamin133467.pdf
 
133467 compiladores 4.pdf
133467 compiladores 4.pdf133467 compiladores 4.pdf
133467 compiladores 4.pdf
 
133467_COMPILADORES3.pdf
133467_COMPILADORES3.pdf133467_COMPILADORES3.pdf
133467_COMPILADORES3.pdf
 
133467_COMPILADORES2
133467_COMPILADORES2133467_COMPILADORES2
133467_COMPILADORES2
 
COMPILADORES1.pdf
COMPILADORES1.pdfCOMPILADORES1.pdf
COMPILADORES1.pdf
 
Algoritmos de búsqueda.pdf
Algoritmos de búsqueda.pdfAlgoritmos de búsqueda.pdf
Algoritmos de búsqueda.pdf
 
Logica proposicional
Logica proposicionalLogica proposicional
Logica proposicional
 
Lenguajes para dispositivos moviles 133467
Lenguajes para dispositivos moviles 133467Lenguajes para dispositivos moviles 133467
Lenguajes para dispositivos moviles 133467
 
Bd distribuidas
Bd distribuidasBd distribuidas
Bd distribuidas
 
diseño de bases de datos distribuidas
diseño de bases de datos distribuidas   diseño de bases de datos distribuidas
diseño de bases de datos distribuidas
 
procesamiento de consultas distribuidas
procesamiento de consultas distribuidasprocesamiento de consultas distribuidas
procesamiento de consultas distribuidas
 
Algoritmo de INGRES
Algoritmo de INGRES Algoritmo de INGRES
Algoritmo de INGRES
 
Fragmentación
FragmentaciónFragmentación
Fragmentación
 
Modelo cliente servidor
Modelo cliente servidorModelo cliente servidor
Modelo cliente servidor
 
Arquitectura de bases de datos distribuidas
Arquitectura de bases de datos distribuidasArquitectura de bases de datos distribuidas
Arquitectura de bases de datos distribuidas
 

Último

ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxSergioGJimenezMorean
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMarceloQuisbert6
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
Propositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicacionesPropositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicaciones025ca20
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdfFlorenciopeaortiz
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUMarcosAlvarezSalinas
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 

Último (20)

ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptxPPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
PPT SERVIDOR ESCUELA PERU EDUCA LINUX v7.pptx
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Magnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principiosMagnetismo y electromagnetismo principios
Magnetismo y electromagnetismo principios
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
Propositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicacionesPropositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicaciones
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
estadisticasII Metodo-de-la-gran-M.pdf
estadisticasII   Metodo-de-la-gran-M.pdfestadisticasII   Metodo-de-la-gran-M.pdf
estadisticasII Metodo-de-la-gran-M.pdf
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 

Programación orientada a objetos

  • 1. 1 PROGRAMACIÓN ORIENTADA A OBJETOS SCD1025 3:00 – 4:00 P.M Alumno: Joaquín Martínez Benjamín No. Control: 11161009 Periodo escolar: Ene-jun/2013 INGENIERÍA EN SISTEMAS COMPUTACIONALES
  • 2. 2 PROGRAMACIÓN ORIENTADA A OBJETOS. OBJETIVO GENERAL DE LA MATERIA: Diseñar e implementar objetos de programación que permiten resolver situaciones reales y de ingenierías. Unidad 1Introduccion al paradigma de la programación orientada a objetos. 1.1Elementos del modelo de objetos, clases, abstracción, modularidad, encapsulamiento, herencia, polimorfismo. 1.2Lenguaje de modelado unificado, diagrama de clases. Unidad 2 Clases y objetos 2.1 Declaración de clases: atributos, métodos, encapsulamiento. 2.2 Instanciación de una clase. 2.3 Referencia al objeto actual. 2.4 Métodos: Declaración, mensajes, paso de parámetros, retorno de valores. 2.5 Constructores y destructores: declaración uso y aplicación. 2.6 Sobrecarga de métodos. 2.7 Sobrecarga de operadores, concepto y utilidad, operadores unarios y binarios. Unidad 3 Herencia 3.1 Definición; clase base, clase final. 3.2 Clasificación; herencia simple y herencia múltiple. 3.3 Reutilización de miembros heredados. 3.4 Referencia al objeto de la clase base. 3.5 Constructores y destructores en clases derivadas. 3.6 La definición de métodos en clases derivadas. Unidad 4 Polimorfismo 4.1 Definición. 4.2 Clases abstractas; definición, métodos abstractos, implementación de clases abstractas y modelado. 4.3 Interfaces: Definición, implementación de interfaces, herencia de interfaces. 4.4 Variables polimórficas (plantillas); definición uso y aplicación. 4.5 Reutilización de código.
  • 3. 3 Unidad 5 Excepciones 5.1 Definición. 5.2 Tipos de excepciones. 5.3 Propagación de excepciones. 5.4 Gestión de excepciones; manejo y lanzamiento. Unidad 6 Flujos y archivos 6.1 Definición. 6.2 Clasificación; archivos de texto y binarios. 6.3 Operaciones básicas y tipos de accesos. 6.4 Manejo de objetos. Fuentes de información “Programación orientada a objetos” Luis Joyanes Aguilar. Mc Graw Hill “Java 2 Fundamentos de programación” Francisco Javier Ceballos. Editorial Alfa Omega. “Como programar en Java”. Deitel & Deitel. Prentice Hall. “Programación en Java” Herbert Schih. Prentice Hall. Evaluación Examen 50% teórico 50% practico. Asistencia obligatoria Participación Tareas Practicas *Para derecho a examen tener 95 % de asistencia, tener puntos en participación, tareas y prácticas.
  • 4. 4 PROGRAMACIÓN ORIENTADA A OBJETOS 1.1Elementos del modelo de objetos, clases, abstracción, modularidad, encapsulamiento, herencia, polimorfismo. Clase: Una clase es una plantilla utilizada para construir o definir un objeto. Atributos: Características propias del objeto. Métodos de acceso para un atributo: public private protected Métodos: Conjunto de acciones que realiza o responde el objeto. Objeto: Es la instanciación de una clase, todos los objetos son de una clase particular. Abstracción: Captar características esenciales de un objeto omitiendo características secundarias. Modularidad: Consiste en subdividir el problema en partes pequeñas para facilitar su programa y su mantenimiento. Encapsulamiento: Aquella propiedad que permite ver a un objeto como una caja negra en la que se ha dado toda la información relacionada con dicho objeto. Esto nos permite manipular los objetos como unidades básicas permaneciendo junta su estructura interna. Herencia: Es una propiedad en la que podemos heredar métodos y atributos de otra clase, de esta forma se garantiza la reutilización de código. *Accesos + public: Se heredan métodos y atributos de otros paquetes y clases del mismo paquete. # protected: Se pueden heredar clases del mismo paquete y no de otros paquetes. _ private: Se elimina la posibilidad de la herencia.  Estos accesos definen la visibilidad de los datos.
  • 5. 5 Polimorfismo: Esta característica permite implementar múltiples formas de un mismo método, dependiendo cada una de ellas de la clase sobre la que se realice la implementación. Se puede acceder a una variedad de métodos distintos, todos con el mismo nombre pero con distintos tipos y formas de argumento. Ejemplo de polimorfismo:
  • 6. 6 1.2Lenguaje de modelado unificado, diagrama de clases. El lenguaje UML (Lenguaje de modelo unificado) Es un lenguaje gráfico utilizado para representar la relación entre objetos, así como casos de uso, asociación, agregación… de todo sistema, pero no muestra la lógica algorítmica de la solución del sistema. Uno de los temas importantes del UML es la clase. < nombre de la clase> <atributos> <métodos u operación> Ejemplo: Clase cuenta Operaciones -Depositar -Girar -Balance Atributos: (+): El atributo es accesible desde todos lados (public). (-): El atributo es accesible solo para los métodos de la clase ( private ). (#): No es accesible desde fuera de la clase, pero si por métodos de la clase que se deriven de ella. (protected). Cuenta: int Cuenta balance: int + depositar ( monto: int ): void +girar (monto: int):boolean +balance (): int Características validas que dan significado a cada dato. No debe usar símbolos especiales ( %,+,-,*,ñ,á,etc). Los métodos pueden ser simples (void) o parame trizados. Los nombres no pueden ser palabras reservadas o con símbolos especiales.
  • 7. 7 Métodos: public: El método es accesible desde todos lados . private: Solo son accesibles desde dentro de la clase. protected: El método no será accesible desde fuera de la clase, pero si por métodos de la clase y otros métodos que se deriven.
  • 8. 8 Unidad 2 Clases y objetos Arreglo: Conjunto homogéneo, finito y ordenado que comparten un mismo nombre. (lista o vector) Int lista [10] 0 1 2 3 4 5 6 7 8 9 *Implementar una lista de 20 elementos
  • 9. 9 *Listas *Arreglos paralelos Problema: Se tiene una lista de 10 alumnos con sus respectivos datos. -clave -nombre -materia -promedio Realizar un programa para imprimir el porcentaje de alumnos de programación1, estructura de datos y lenguajes 2. Clave Nombre Materia Promedio Son un conjunto de arreglos verticales cada uno con un tipo de datos que comparten una longitud. 0 1 . . . n 0 1 . . . n 0 1 . . . n 0 1 . . . n Clave Nombre Materia promedio
  • 10. 10
  • 12. 12 2.1 -Métodos, atributos -Encapsulamiento 2.2 Instanciación de una clase 2.3 Referencia al objeto actual En poo para referirse al objeto actual, se utiliza el método fijo.
  • 13. 13 *El método this es usado en programación orientada a objetos para referencia los atributos del objeto y hacerlos distintos de un método. 2.4 Métodos Simples void: Estos trabajan en datos globales Parametrizados: Son los que devuelven y reciben valores public int// tipo valor de salida// método (int x, int y, int z) // parámetros de entrada return; Ejemplo: public tipo metodo (arg1,arg2,arg3...) { return tipo; } Realizar un programa para leer un número <= 12 e imprimir su factorial
  • 14. 14 Métodos que devuelven y reciben valores. Realizar un programa para calcular la depreciación de un bien utilizando la línea recta, el cual consiste en dividir el valor del bien entre el número de años, el valor resultante es lo que devolverá dicho bien al año. El programa mostrara una tabla como la siguiente. Año Capital inicial Deposito Capital final 1 10 000 1000 9 000 2 9 000 1000 8 000 3 8 000 1000 7 000
  • 15. 15
  • 16. 16 2.5 Destructores en java Los destructores son métodos que se llaman automáticamente por el compilador cuando un programa termina. A diferencia de c, c++, java no tiene un destructor explicito, ya que en lugar de la función delete () de c, se usa System.cb (), biene Collection . backage, ( Recolector de Basura). El método cb () de system es innecesario ya que java al perder la referencia a un objeto es eliminado automáticamente de la memoria. Sobrecarga de operadores... investigar si existe......
  • 17. 17 2.6 Sobrecarga de métodos Consiste en colocar múltiples métodos con el mismo nombre pero con distintos parámetros.Es una forma de diseñar métodos que simulen el polimorfismo. Diseñar un programa para calcular el área de cualquier figura. Antes de realizar el cálculo el programa mostrara con letras grandes el nombre de la figura.
  • 18. 18
  • 19. 19 Una empresa x dedicada a la compraventa de productos básicos desea un programa para imprimir los datos de venta de 3 productos básicos : maíz frijol arroz El programa debe imprimir lo siguiente: a) tabla de venta anual de los tres productos b) que producto se vendió mas en el año c) imprimir todos los totales de ventas mensuales y por productos. MAIZ FRIJOL ARROZ TOTAL MENSUAL ENERO FEBRERO MARZO … TOTALES . . . . . . . . .
  • 20. 20
  • 21. 21
  • 22. 22 RESUMEN GENERAL -clases-métodos-atributos-método main-paquetes. Paquetes: los paquetes es una carpeta donde se almacenan las clases de un proyecto, todas las clases de un paquete tiene una relación. Java es un lenguaje ordenado, crea las clases en un lugar adecuado al proyecto a realizar. Todas las clases deben estar dentro de un paquete. Los paquetes son necesarios para que java ligue las librerías al paquete del proyecto. public class miclase { // Declaración de atributos private int [] lista; public String nombre; public double estatura; public miclase(){ JtextArea area= new JtextArea(); JOptionPane.showMessageDialog(null,"Constructor vacio"); } public miclase(int a[],nom,estat) { lista=a; nombre=nom; estatura= estat; JtextArea area= new JtextArea(); } public static void main (String []args){ int a[]={10,20,30,40}; miclase Obj = new miclase(); miclase Obj= new miclase(a,"Juan",1.56); for (int i=o; i<3;i++) {area.append (a [i] + "n");} area.append (nombrre +"n"+estatura + "n"); JOptionPane.showMessageDialog (null,area); ____________________________________________________________________________ area =newJTextArea(); area.append (); area.setFont (new Font ("Arial" , 180)); area.setColor (new color (blue)); ______________________________________________________________________________ public int [] arreglo ----- formato java public int arreglo [];___________________ formato c,c++ _______________________________________________________________________________
  • 23. 23 Unidad 3 Herencia 3.1 Definición, clase base, clase final. Es una de las propiedades que permiten la reutilización de código. Solo cuando los métodos y atributos son públicos o protegidos.
  • 24. 24 3.2 Clasificación; herencia simple y herencia múltiple. Herencia simple: Una clase hereda características y comportamientos de otra clase. Java Herencia múltiple: -vertical ------ Existe -horizontal- No existe
  • 25. 25
  • 26. 26 Aplicación básica de la herencia. 3.3 Reutilización de miembros heredados ¿Qué es la reutilización de código? Es que por medio de la herencia se utiliza código java de clases previamente desarrollados. Ejemplo: Problema 1: Desarrollar un programa para determinar si un número es o no primo leído por el teclado. Problema 2: Imprimir todos los primos entre 2 y 100 Problema 3: obtener la suma de las siguientes expresiones.
  • 27. 27
  • 28. 28
  • 29. 29 3.4 Referencia al objeto de la clase base. // Problema: Realizar un programa para depreciar un bien usando el método de la // línea recta, el importe en depreciar el bien en un número de años. //dividiendo el capital entre el número de años, el resultado es la cantidad, depreciada cada año.
  • 30. 30
  • 31. 31 3.5 Constructores y destructores en clases derivadas.
  • 32. 32 3.6 Redefinición de miembros heredados. A veces es importante redefinir los miembros heredados con la necesidad de darles a algunos métodos nuevos comportamientos. Para llamar el método de la superclase se usa el método super y el método redefinido con su propio nombre. Usando la herencia simple usar un programa para calcular lo siguiente: Imprimir una tabla de divisores de los 20 primeros números naturales definiendo en cada una de las tablas de la siguiente forma: 1 2 3 4 5 6 7 1 x 2 x 3 x 4 x x 5 x 6 x x 7 x cuantos divisores ,si es o no primo
  • 33. 33 Unidad 4 Polimorfismo 4.1 Definición Esta característica permite implementar múltiples formas de un mismo método, dependiendo cada una de ellas de la clase sobre la que se realice la implementación. Se puede acceder a una variedad de métodos distintos, todos con el mismo nombre pero con distintos tipos y formas de argumento. 4.2 Clases abstractas; definición, métodos abstractos, implementación de clases abstractas y modelado. Clases abstractas Son clases genéricas que se crean con la intención de usar sus atributos y métodos donde la subclase se encargara de los detalles de cada método. De una clase abstracta no puede crearse un objeto. Si no que solo son creadas para ser derivadas de otras clases, donde dentro de cada clase se redefinirá cada uno de sus métodos.
  • 34. 34 Aplicaciones de las clases abstractas Problema: Usando clases abstractas desarrollar un programa para calcular una tabla de depreciación por la suma de los números de años.
  • 35. 35
  • 36. 36 4.3 Interfaces: Definición, implementación de interfaces, herencia de interfaces. Interfaces: Es un dispositivo o un sistema utilizado por entidades inconexas. Por ejemplo un control remoto, el idioma inglés, etc. En java una interfaz es un dispositivo que permite interactuar a objetos no relacionados entre sí. En java básicamente una interfaz se define como un conjunto de mensajes que se pueden aplicar a muchas clases de objetos a las que cada una de ellas debe responder de una forma adecuada. Ejemplo public interface Serie int metodo1 (); void metodo2 (); void metodo3(); public class Calculadora implements Serie { // datods public calcularDatos (); } public inte metodo1(){ // cuerpo del metodo //realiza lo que el metodo 1 realiza en esta clase } public void metodo2() { // cuerpo del metodo //realiza lo que el metodo 1 realiza en esta clas public void metodo3() {
  • 37. 37 } public static void main (String [] args ) { } } publi class elementos implements Serie // Datos public Elementos () { } public int metodo1(){ // cuerpo del metodo //realiza lo que el metodo 1 realiza en esta clas }
  • 38. 38
  • 39. 39
  • 40. 40 Aplicación de las interfaces Todos los datos declarados de una interface pueden ser de tipo final, abstracto o estático. Usar una interfaz para calcular la transpuesta de una matriz. import javax.swing.*; public class Transpuesta implements Matriz { public JTextArea area; public int b [][]; public Transpuesta () { area = new JTextArea (); b = new int [4][4]; } public void calcular () { for (int j=0; j<4; j++) { for (int k = 0; k <4 ; k++ ) { b [j][k]= a[k][j]; } } } public void imprimir () { area.append ("El arreglo original es: n"); for (int i =0; i<4; i++ ) { for (int j=0 ;j<4;j++) { area.append (a [i][j] + "t");
  • 41. 41 } area.append ("n"); } area.append ("nn Matriz transpuesta: n"); for ( int i=0 ; i<4; i++ ) { for ( int j =0; j<4 ; j++) { area.append ( b[i][j]+"t"); } area.append ("n"); } JOptionPane.showMessageDialog ( null,area) ; } // cierra metodo public static void main (String [] args ) { Transpuesta Obj= new Transpuesta () ; Obj.calcular () ; Obj.imprimir (); } } // cierra clase. public class Table extends Transpuesta { public Table () { super (); } public void llamar (){ super.calcular(); super.imprimir();} public static void main (String [] args ) { Table Obj= new Table(); Obj.llamar(); } }
  • 42. 42 import javax.swing.*; public class Eleccion implements Partidos { public JScrollPane barra; public JTextArea area; public int total [] ; public int mayor; public Eleccion () { mayor=0;
  • 43. 43 area = new JTextArea (15,15); barra = new JScrollPane (area) ; } public void votando (){ int distrito=0; int partido=0; int sumaPri=0; int sumaPan=0; int sumaPrd=0; for ( int i = 0; i <= 510000; i++) { partido = (int) (Math.random ()*2); distrito= (int) (Math.random () * 10); if (partido==0){ pri [distrito]= pri[distrito]+1; sumaPri++;} if (partido==1){ pan [distrito]= pan [distrito] +1;sumaPan++;} if (partido==2){ prd [distrito]= prd [distrito] +1;sumaPrd++;} } pri[10]=sumaPri; prd[10]= sumaPrd; pan [10]=sumaPan; } public void ganador () { area.append ("Pri tPantPrdtTotalesn"); for ( int i=0; i<=10; i++){ area.append (pri [i]+"t"+pan [i]+"t"+prd [i] + "n"); } int g=0; mayor=pri[10]; if (pan[10]>mayor){ mayor=pan [10]; g=1; } if (prd [10] > mayor){ mayor=prd [10]; g=2; }
  • 44. 44 if(g==0){area.append( "El ganador es el Pri con"+ pri[10]+"votos");} if(g==1){area.append( "El ganador es el Pan con"+ pan[10]+"votos");} if(g==2){area.append( "El ganador es el Prd con"+ prd[10]+"votos");} JOptionPane.showMessageDialog (null,barra); } public static void main (String [] args ) { Eleccion Obj = new Eleccion(); Obj.votando(); Obj.ganador(); } }
  • 45. 45 import javax.swing.*; public class Tabla implements Pitagoras { public JScrollPane barra; public JTextArea area; public int arreglo[][]; int fila; int columna; public Tabla () { int fila=0; int columna=0; arreglo= new int [11][11]; area = new JTextArea (40,40); barra = new JScrollPane (area) ; } public void crearTabla () { for ( fila=1; fila <=10; fila++) { for (columna=1; columna<=10; columna++){
  • 46. 46 arreglo[fila][columna]= fila*columna; area.append (arreglo[fila][columna]+ "t");} area.append ("n"); }JOptionPane.showMessageDialog (null,barra); } public static void main (String [] args ){ Tabla Obj= new Tabla (); Obj.crearTabla (); } }
  • 47. 47 Unidad 5 Excepciones Es cuando en la ejecución de un programa sucede un error, entonces se dice que las excepciones son un conjunto de instrucciones para atrapar esos errores y taparlos adecuadamente para evitar la parada de la ejecución anormal del programa. Con una excepción lanzada, si el error ocurre el programa sigue funcionando como si no ocurriese nada. Ejemplo: Para tratar excepciones se utilizan 5 palabras claves: try, catch, throw, throws y finally. int a=10; int b=0; try { int s= a/b; } catch (ArithmeticException){ System.out.println ("Division por cero); } area.append ( "El valor es " +s+ "n"); } public void dividir (int a, int b){ int valor= a/b; area.append ("El valor es " + valor); }
  • 48. 48 int num[1]= new int [2]; int a=10,b=0; try { num [4]=10; int s=a/b; } catch (Array IndexOutOf Bounds Exception except) { System.out.println ( "Arreglo fuera de limite n"); } catch (Arithmetic Exception except ) { System.out.println ("No se puede dividir entre cero") } String cad= campotext.getText (); int num= Integer.parseInt( cad ); try { String cad= campotext.getText(); int num= Integer.parseInt ( cad); catch (NumberFormatException except ){ JOptionPane.showMessageDialog (null, "Dato incorrecto"); }
  • 49. 49 Unidad 6. FLUJOS Y ARCHIVOS Archivos Archivos: Es un conjunto de datos almacenados en un formato determinado. Datos Imagenes Musica Video Texto Alfanumericos Archivos de datos: Es una colección de registros lógicamente relacionados que tienen una aplicación común. Registro: Es una entidad formada por un conjunto de campos formando un tuplax, es un ente dependiente del conjunto y accesado con forma individual. public in clave; public String nombre; public String direccion; public String ciudad; public String estado; clave nombre direccion ciudad estado En java los campos de un archive se declaran como atributos de una clase a diferencia de c, c++ que declaran como un tipo RECORD.
  • 50. 50 ¿Qué es un campo? Es una característica de un objeto y es una parte fundamental de un archivo de datos. Es una unidad mínima de un registro. Existen distintos tipos de campo: Campos claves: Son utilizados para aplicar una búsqueda, para localizarlo en el archivo. Estos campos también reciben el nombre de llaves de identificación. Tambien reciben el nombre de campos primarios. Campos secundarios: Son campos cuya información se repite, fusiona con otros campos para forma una segunda alternativa de búsqueda. Ejemplos: Fechas de nacimiento, código postal, fecha de filiación, dirección. Todos los sistemas de información aplican entre los datos o tablas de archivos un conjunto de operaciones las cuales son fundamentales para tener actualizados los datos del sistema en cualquier momento. Estas operaciones son: Creacion de las tablas- Definir cada uno de los componentes de las tablas. Actualizacion : Insercion de un nuevo registro. Eliminacion de registro. Modificaciones de registro. Consulta -Busqueda -Visualizacion general -Generacion de reportes Mantenimiento.
  • 51. 51 Operaciones sobre archivos -Creación del archivo Define los componentes private int clase private String nombre Definir el nombre interno del archivo private DatoOutputStream archivo; Definir un nombre de archivo, para detectar si existe el archivo. File fichero; fichero= new File ("Ventana del"); if ( fichero.existe()){ ejecutar el archivo} Escribir los campos del archivo . archivo.writeInt (clave); Para escribir los campos de se usan los siguientes métodos; writeInt () // Escribe un entero writeDouble() writeFloat() writeLog writeChar() writeUTF() WriteChars() writeByte()
  • 52. 52 El método que escribe un registro es: void insertar ( int clave, String nombre ){ try{ archivo= new DataOutputString ( new PutferedOutput Stream (new FileOutput Stream ("alumnos.dat",true)); archivo.writeInt (clave); archivo.writeUTF (nombre ); } catch (IOException e ){ System.out.println ("error"+ e.getMessage ()); } finally { try{ archivo.clase (); } catch (IOException ff ) { System.out.println ( "No se puede cerrar el archivo "); } }