SlideShare ist ein Scribd-Unternehmen logo
1 von 25
TALLER DE PROGRAMACIÓN DE SISTEMAS
                                           Programación orientada
                                              a objetos en Java




                                       Si alguien se quiere retirar, adelante, pero...
                                     ¿de verdad crees que ya lo sabes todo de clases,
                                                   objetos e instancias?

                                                   Lic. Nancy Michelle Torres Villanueva   1
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                                        POO
                                     ●   Modelo de programación que basa su esquema
                                         de pensamiento, análisis y diseño en
                                         interacciones entre objetos. Cada objeto tiene
                                         un comportamiento definido y que puede ser
                                         relacionado con otros objetos.
                                         ●   Colaborativos y cooperativos
                                         ●   Reusables
                                         ●   Distribuíbles
                                         ●   Localizables


                                                         Lic. Nancy Michelle Torres Villanueva   2
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                                Objeto
                                     ●   Un objeto es un ente que tiene estado,
                                         comportamiento e identidad englobados en una
                                         sola unidad.
                                     ●   La estructura de un objeto deriva del concepto
                                         de tipo de dato abstracto.




                                                     Lic. Nancy Michelle Torres Villanueva   3
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                                  Clase
                                     ●   Una clase es la definición formal de un objeto
                                         en los términos de estructura y comportamiento
                                         común.
                                     ●   Así podemos usar la definición de una clase
                                         para crear objetos de ese tipo de clase, esto
                                         es, crear objetos que contengan todos los
                                         componentes especificados en la clase
                                         (instancias).



                                                     Lic. Nancy Michelle Torres Villanueva   4
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                  Encapsulamiento
                                     ●   Se llama encapsulamiento a la conjugación
                                         de propiedades y comportamiento de un objeto.
                                     ●   Esto logra también que se oculte la
                                         implementación y variables de ese objeto.




                                                     Lic. Nancy Michelle Torres Villanueva   5
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                             Componentes de una Clase
                                     ●   Una definición formal de una clase se compone de:
                                         ●   Campos. Estos son variables que almacenan datos
                                             referentes al objeto.
                                         ●   Funciones. Estos son las operaciones que se pueden
                                             realizar sobre objetos de esa clase. También son
                                             conocidos como métodos.
                                     ●   Los campos pueden ser tipos de datos primitivos u
                                         objetos. Los métodos se asemejan a la estructura
                                         formal de las funciones. Tanto los campos como los
                                         métodos se les considera miembros.


                                                        Lic. Nancy Michelle Torres Villanueva   6
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                   Clase en JAVA
                                     ● Una clase en Java se define mediante la
                                       palabra reservada class y enseguida, el
                                       identificador de la clase. Las propiedades y el
                                       comportamiento se definen dentro del cuerpo
                                       de la clase.
                                     class NombreClase {
                                         //Propiedades
                                         ...
                                         //Comportamiento
                                     }
                                                    Lic. Nancy Michelle Torres Villanueva   7
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                 ... Clase en JAVA
                                     class MiClase {
                                         tipo1 miVariable1;
                                         tipo2 miVariable2;
                                         ...
                                         tipoK miMetodo1(tipoK1 arg1, ...) {
                                         }
                                         tipoL miMetodo1(tipoL1 arg1, ...) {
                                         }
                                     }


                                                   Lic. Nancy Michelle Torres Villanueva   8
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                             Instancias
                                     ●   Un objeto es también conocido como una
                                         instancia de la clase a la que pertenece.
                                         Entonces al crearse la instancia, el objeto
                                         contendrá los campos definidos en la clase.
                                     ●   Los miembros pueden clasificarse como:
                                         ●   Miembros de instancia, y
                                         ●   Miembros de clase




                                                        Lic. Nancy Michelle Torres Villanueva   9
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                         Miembros de instancia y clase
                                     ●   Miembros de instancia
                                         ●   Cada objeto tendrá su propia copia local de cada
                                             variable definida en clase
                                         ●   Estas variables existen cuando se genera la instancia
                                     ●   Miembros de clase
                                         ●   Son variables que existen en la clase y solo existe una
                                             sola copia para todas las instancias.
                                         ●   El valor es compartido y el mismo para todas las
                                             instancias.
                                         ●   Estas variables existen AÚN que no exista ni una
                                             instancia de esa clase.

                                                         Lic. Nancy Michelle Torres Villanueva   10
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                     ... Miembros de instancia y clase
                                     public class Circulo {
                                        //variable de clase
                                        static double PI = 3.14;
                                        //variables de instancia
                                        double x;
                                        double y;
                                        double radio;
                                     }
                                     ●


                                                Lic. Nancy Michelle Torres Villanueva   11
TALLER DE PROGRAMACIÓN DE SISTEMAS   public class Circulo {
                                         //variable de clase
                                         static double PI = 3.14;
                                         //variables de instancia
                                         double x;
                                         double y;
                                         double radio;


                                         double area() {
                                              return PI*radio*radio;
                                         }


                                         static double pi() {
                                             return PI;
                                         }
                                     }
                                                          Lic. Nancy Michelle Torres Villanueva   12
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                         ... Miembros de instancia y clase
                                     ●   Suponga la clase A con una variable de
                                         instancia y un método de clase:
                                     public class A {
                                          int x;
                                          static int cuadradoX() {
                                          return x*x;
                                          }
                                     }
                                     ●   Esto marca error, ¿Por qué?

                                                     Lic. Nancy Michelle Torres Villanueva   13
TALLER DE PROGRAMACIÓN DE SISTEMAS   public class A {
                                          public int inc(int j) {
                                              ++j;
                                              return j;
                                          }
                                     }
                                     ...
                                     A a;
                                     int j = 10, i;
                                     ...
                                     i = a.inc(j);
                                     ●   ¿Cuánto vale i y j?

                                                     Lic. Nancy Michelle Torres Villanueva   14
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                             Acceso a campos y métodos
                                     ●   Campos y métodos de instancia
                                         ●   A a = new A();
                                         ●   ...
                                         ●   a.i = 5;
                                         ●   a.imprime();
                                     ●   Campos y métodos de clase
                                         ●   A.dato = 6;
                                         ●   A.ejecuta();



                                                     Lic. Nancy Michelle Torres Villanueva   15
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                         Constructores
                                     ●   Un constructor es un método especial que no
                                         devuelve ningún tipo de dato, que posee el
                                         mismo nombre de la clase y que tiene la
                                         finalidad de:
                                         ●   Crear espacio en memoria para el objeto
                                         ●   Inicializar las variables de instancia




                                                         Lic. Nancy Michelle Torres Villanueva   16
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                  ... Constructores
                                     class Clock {
                                         int hour;
                                         Clock() {
                                             hour = 12;
                                         }
                                         void setHour(int hour) {
                                             this.hour = hour;
                                         }
                                     }


                                                     Lic. Nancy Michelle Torres Villanueva   17
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                   ... Constructores
                                     ●   Cuando un objeto es declarado para su uso
                                         posterior, es imperativo construir el objeto
                                         mediante una llamada al constructor.
                                     class A {
                                         A() {
                                         ...
                                         }
                                     }
                                     ...
                                     A a = new A();
                                                     Lic. Nancy Michelle Torres Villanueva   18
TALLER DE PROGRAMACIÓN DE SISTEMAS   class B{
                                       int b;
                                       B() {
                                          b = 12;
                                       }
                                     }
                                     ...
                                     B b = new B();
                                     B c = b;
                                     b.b = 15;
                                     System.out.println(c.b); //¿?

                                                Lic. Nancy Michelle Torres Villanueva   19
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                     La variable this
                                     ●   Esta variable implícita siempre se refiere a la
                                         instancia actual.
                                     ●   Por medio de esta referencia, se pueden
                                         acceder a los campos y métodos del objeto en
                                         turno.




                                                      Lic. Nancy Michelle Torres Villanueva   20
TALLER DE PROGRAMACIÓN DE SISTEMAS   class Clock {
                                        int hour = 12;
                                        void setHour(int hour) {
                                           hour = hour;
                                        }
                                     }
                                     ...
                                     Clock c;
                                     ...
                                     c.setHour(24);
                                     ●   ¿Cuánto vale c.hour?
                                     ●

                                                    Lic. Nancy Michelle Torres Villanueva   21
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                             ... La variable this
                                     class Clock {
                                       int hour = 12;
                                       void setHour(int hour) {
                                          this.hour = hour;
                                       }
                                     }




                                               Lic. Nancy Michelle Torres Villanueva   22
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                Sobrecarga de métodos
                                     ●   Hay ocasiones que resulta útil tener un mismo
                                         identificador de método para diferentes método
                                         con diferente funcionalidad. Ejemplo:
                                     class Calculadora {
                                         double suma(double d1, double d2) {
                                             return d1 + d2;
                                         }
                                         int suma(int i1, int i2) {
                                             return i1 + i2;
                                         }
                                     }


                                                         Lic. Nancy Michelle Torres Villanueva   23
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                            ... Sobrecarga de métodos
                                     ●   De la misma forma, es posible definir
                                         sobrecarga para los constructores creando un
                                         repertorio amplio de maneras de construir un
                                         objeto.




                                                    Lic. Nancy Michelle Torres Villanueva   24
TALLER DE PROGRAMACIÓN DE SISTEMAS

                                                                  Tarea
                                     ●   Investigar las diferencias de trabajar con clases
                                         estaticas o con instancias de clases.




                                                     Lic. Nancy Michelle Torres Villanueva   25

Weitere ähnliche Inhalte

Was ist angesagt?

Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro ComparativoMartha
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalJose Angel Rodriguez
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Josue Lara Reyes
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVAjesanchez5
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a ObjetosNestor Traña
 
Curso Java Inicial 5 Relaciones Entre Objetos
Curso Java Inicial   5 Relaciones Entre ObjetosCurso Java Inicial   5 Relaciones Entre Objetos
Curso Java Inicial 5 Relaciones Entre ObjetosEmilio Aviles Avila
 
Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)Jose R. Hilera
 
El dba(administracion de base de datos)
El dba(administracion de base de datos)El dba(administracion de base de datos)
El dba(administracion de base de datos)UTN
 
POO con PHP
POO con PHPPOO con PHP
POO con PHPvinceq
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clasesNedoww Haw
 
Unidad 3. obj 3.2 Programación Orientada a Objetos
Unidad 3. obj 3.2 Programación Orientada a ObjetosUnidad 3. obj 3.2 Programación Orientada a Objetos
Unidad 3. obj 3.2 Programación Orientada a ObjetosAlix Indriago
 

Was ist angesagt? (20)

Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro Comparativo
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Introduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos originalIntroduccion al paradigma de la programacion orientado a objetos original
Introduccion al paradigma de la programacion orientado a objetos original
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
CUESTIONARIO JAVA
CUESTIONARIO JAVACUESTIONARIO JAVA
CUESTIONARIO JAVA
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Conceptos Basicos de POO
Conceptos Basicos de POOConceptos Basicos de POO
Conceptos Basicos de POO
 
6 Curso de POO en Java - clases y objetos
6  Curso de POO en Java - clases y objetos6  Curso de POO en Java - clases y objetos
6 Curso de POO en Java - clases y objetos
 
Semana 3 Herencia en Java
Semana 3   Herencia en JavaSemana 3   Herencia en Java
Semana 3 Herencia en Java
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
Curso Java Inicial 5 Relaciones Entre Objetos
Curso Java Inicial   5 Relaciones Entre ObjetosCurso Java Inicial   5 Relaciones Entre Objetos
Curso Java Inicial 5 Relaciones Entre Objetos
 
MVC
MVCMVC
MVC
 
Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)Patrón de diseño Modelo-Vista-Controlador (MVC)
Patrón de diseño Modelo-Vista-Controlador (MVC)
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
El dba(administracion de base de datos)
El dba(administracion de base de datos)El dba(administracion de base de datos)
El dba(administracion de base de datos)
 
POO con PHP
POO con PHPPOO con PHP
POO con PHP
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Unidad 3. obj 3.2 Programación Orientada a Objetos
Unidad 3. obj 3.2 Programación Orientada a ObjetosUnidad 3. obj 3.2 Programación Orientada a Objetos
Unidad 3. obj 3.2 Programación Orientada a Objetos
 
Conceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de DatosConceptos Fundamentales de Base de Datos
Conceptos Fundamentales de Base de Datos
 

Andere mochten auch

programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosJavier Camacho
 
Recordando Java desde Cero
Recordando Java desde CeroRecordando Java desde Cero
Recordando Java desde CeroMichelle Torres
 
Programación Orientada a Objetos parte 2
Programación Orientada a Objetos  parte 2Programación Orientada a Objetos  parte 2
Programación Orientada a Objetos parte 2Karla Silva
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)Eric Martinez Aguilar
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetoslindacajaperuiz
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetosmichaelalta
 
Manejo de archivos en JAVA
Manejo de archivos en JAVAManejo de archivos en JAVA
Manejo de archivos en JAVAMichelle Torres
 
10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadoresClara Patricia Avella Ibañez
 
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
 
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAU.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAiessanjuanbosco
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()Clara Patricia Avella Ibañez
 
sistemas de produccion y programacion de la produccion
sistemas de produccion y programacion de la produccionsistemas de produccion y programacion de la produccion
sistemas de produccion y programacion de la produccionguesta75b71
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 

Andere mochten auch (20)

programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Recordando Java desde Cero
Recordando Java desde CeroRecordando Java desde Cero
Recordando Java desde Cero
 
Programación Orientada a Objetos parte 2
Programación Orientada a Objetos  parte 2Programación Orientada a Objetos  parte 2
Programación Orientada a Objetos parte 2
 
Proyecto access
Proyecto accessProyecto access
Proyecto access
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Programación de sistemas
Programación de sistemasProgramación de sistemas
Programación de sistemas
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase
 
Manejo de archivos en JAVA
Manejo de archivos en JAVAManejo de archivos en JAVA
Manejo de archivos en JAVA
 
10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores10 Curso de POO en java - métodos modificadores y analizadores
10 Curso de POO en java - métodos modificadores y analizadores
 
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
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
 
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAU.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()11 Curso de POO en java - métodos constructores y toString()
11 Curso de POO en java - métodos constructores y toString()
 
TRABAJO FINAL DE ACCESS 2010
TRABAJO FINAL DE ACCESS 2010TRABAJO FINAL DE ACCESS 2010
TRABAJO FINAL DE ACCESS 2010
 
sistemas de produccion y programacion de la produccion
sistemas de produccion y programacion de la produccionsistemas de produccion y programacion de la produccion
sistemas de produccion y programacion de la produccion
 
17 arreglos bidimensionales java
17 arreglos bidimensionales java17 arreglos bidimensionales java
17 arreglos bidimensionales java
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 

Ähnlich wie Programación Orientada a Objetos en JAVA

Ähnlich wie Programación Orientada a Objetos en JAVA (20)

PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Diapositivas poo
Diapositivas pooDiapositivas poo
Diapositivas poo
 
Programacion orientada a objetos
Programacion orientada a objetosProgramacion orientada a objetos
Programacion orientada a objetos
 
Java – Clases y Objetos
Java – Clases y ObjetosJava – Clases y Objetos
Java – Clases y Objetos
 
Conceptos de programación orientada a objetos
Conceptos de programación orientada a objetosConceptos de programación orientada a objetos
Conceptos de programación orientada a objetos
 
Programacion orientada a objetos
Programacion orientada a objetos Programacion orientada a objetos
Programacion orientada a objetos
 
Programación orientada a objetos
Programación orientada a objetos Programación orientada a objetos
Programación orientada a objetos
 
Unidad1 y 2
Unidad1 y 2Unidad1 y 2
Unidad1 y 2
 
Cap3.0
Cap3.0Cap3.0
Cap3.0
 
java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )java (clases,herencias,encapsulamiento,.. )
java (clases,herencias,encapsulamiento,.. )
 
Curso de Java Intermedio
Curso de Java IntermedioCurso de Java Intermedio
Curso de Java Intermedio
 
Cap3.0
Cap3.0Cap3.0
Cap3.0
 
programacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptxprogramacion orientada a objetos con PHP .pptx
programacion orientada a objetos con PHP .pptx
 
Características principales en POO por Xavier Navia.pdf
Características principales en POO por Xavier Navia.pdfCaracterísticas principales en POO por Xavier Navia.pdf
Características principales en POO por Xavier Navia.pdf
 
Principios poo
Principios pooPrincipios poo
Principios poo
 
PROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOSPROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOS
 
Investigacion
InvestigacionInvestigacion
Investigacion
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Asignacion2
Asignacion2Asignacion2
Asignacion2
 

Mehr von Michelle Torres

Prototipado rápido para web y mobile
Prototipado rápido para web y mobilePrototipado rápido para web y mobile
Prototipado rápido para web y mobileMichelle Torres
 
Uso de Puerto paralelo en C
Uso de Puerto paralelo en CUso de Puerto paralelo en C
Uso de Puerto paralelo en CMichelle Torres
 
Material de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMaterial de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMichelle Torres
 
Taller de programación de sistemas. Descripción de práctica 2
Taller de programación de sistemas. Descripción de práctica 2Taller de programación de sistemas. Descripción de práctica 2
Taller de programación de sistemas. Descripción de práctica 2Michelle Torres
 
Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Michelle Torres
 
Modos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaModos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaMichelle Torres
 
Rubrica (primera entrega)
Rubrica (primera entrega)Rubrica (primera entrega)
Rubrica (primera entrega)Michelle Torres
 
Introducción a la programación en ambientes web
Introducción a la programación en ambientes webIntroducción a la programación en ambientes web
Introducción a la programación en ambientes webMichelle Torres
 
My sql para principiantes
My sql para principiantesMy sql para principiantes
My sql para principiantesMichelle Torres
 

Mehr von Michelle Torres (14)

Prototipado rápido para web y mobile
Prototipado rápido para web y mobilePrototipado rápido para web y mobile
Prototipado rápido para web y mobile
 
Uso de Puerto paralelo en C
Uso de Puerto paralelo en CUso de Puerto paralelo en C
Uso de Puerto paralelo en C
 
Arreglos en PHP
Arreglos en PHPArreglos en PHP
Arreglos en PHP
 
Material de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMaterial de administración y auditoría de la función informática
Material de administración y auditoría de la función informática
 
Cpu12 Reference Manual
Cpu12 Reference ManualCpu12 Reference Manual
Cpu12 Reference Manual
 
Taller de programación de sistemas. Descripción de práctica 2
Taller de programación de sistemas. Descripción de práctica 2Taller de programación de sistemas. Descripción de práctica 2
Taller de programación de sistemas. Descripción de práctica 2
 
Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1
 
Modos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaModos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorola
 
Rubrica (primera entrega)
Rubrica (primera entrega)Rubrica (primera entrega)
Rubrica (primera entrega)
 
Cv resumido conaic
Cv resumido conaicCv resumido conaic
Cv resumido conaic
 
Introducción a la programación en ambientes web
Introducción a la programación en ambientes webIntroducción a la programación en ambientes web
Introducción a la programación en ambientes web
 
Servidores web
Servidores webServidores web
Servidores web
 
XHTML y CSS
XHTML y CSSXHTML y CSS
XHTML y CSS
 
My sql para principiantes
My sql para principiantesMy sql para principiantes
My sql para principiantes
 

Kürzlich hochgeladen

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 

Kürzlich hochgeladen (10)

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Programación Orientada a Objetos en JAVA

  • 1. TALLER DE PROGRAMACIÓN DE SISTEMAS Programación orientada a objetos en Java Si alguien se quiere retirar, adelante, pero... ¿de verdad crees que ya lo sabes todo de clases, objetos e instancias? Lic. Nancy Michelle Torres Villanueva 1
  • 2. TALLER DE PROGRAMACIÓN DE SISTEMAS POO ● Modelo de programación que basa su esquema de pensamiento, análisis y diseño en interacciones entre objetos. Cada objeto tiene un comportamiento definido y que puede ser relacionado con otros objetos. ● Colaborativos y cooperativos ● Reusables ● Distribuíbles ● Localizables Lic. Nancy Michelle Torres Villanueva 2
  • 3. TALLER DE PROGRAMACIÓN DE SISTEMAS Objeto ● Un objeto es un ente que tiene estado, comportamiento e identidad englobados en una sola unidad. ● La estructura de un objeto deriva del concepto de tipo de dato abstracto. Lic. Nancy Michelle Torres Villanueva 3
  • 4. TALLER DE PROGRAMACIÓN DE SISTEMAS Clase ● Una clase es la definición formal de un objeto en los términos de estructura y comportamiento común. ● Así podemos usar la definición de una clase para crear objetos de ese tipo de clase, esto es, crear objetos que contengan todos los componentes especificados en la clase (instancias). Lic. Nancy Michelle Torres Villanueva 4
  • 5. TALLER DE PROGRAMACIÓN DE SISTEMAS Encapsulamiento ● Se llama encapsulamiento a la conjugación de propiedades y comportamiento de un objeto. ● Esto logra también que se oculte la implementación y variables de ese objeto. Lic. Nancy Michelle Torres Villanueva 5
  • 6. TALLER DE PROGRAMACIÓN DE SISTEMAS Componentes de una Clase ● Una definición formal de una clase se compone de: ● Campos. Estos son variables que almacenan datos referentes al objeto. ● Funciones. Estos son las operaciones que se pueden realizar sobre objetos de esa clase. También son conocidos como métodos. ● Los campos pueden ser tipos de datos primitivos u objetos. Los métodos se asemejan a la estructura formal de las funciones. Tanto los campos como los métodos se les considera miembros. Lic. Nancy Michelle Torres Villanueva 6
  • 7. TALLER DE PROGRAMACIÓN DE SISTEMAS Clase en JAVA ● Una clase en Java se define mediante la palabra reservada class y enseguida, el identificador de la clase. Las propiedades y el comportamiento se definen dentro del cuerpo de la clase. class NombreClase { //Propiedades ... //Comportamiento } Lic. Nancy Michelle Torres Villanueva 7
  • 8. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Clase en JAVA class MiClase { tipo1 miVariable1; tipo2 miVariable2; ... tipoK miMetodo1(tipoK1 arg1, ...) { } tipoL miMetodo1(tipoL1 arg1, ...) { } } Lic. Nancy Michelle Torres Villanueva 8
  • 9. TALLER DE PROGRAMACIÓN DE SISTEMAS Instancias ● Un objeto es también conocido como una instancia de la clase a la que pertenece. Entonces al crearse la instancia, el objeto contendrá los campos definidos en la clase. ● Los miembros pueden clasificarse como: ● Miembros de instancia, y ● Miembros de clase Lic. Nancy Michelle Torres Villanueva 9
  • 10. TALLER DE PROGRAMACIÓN DE SISTEMAS Miembros de instancia y clase ● Miembros de instancia ● Cada objeto tendrá su propia copia local de cada variable definida en clase ● Estas variables existen cuando se genera la instancia ● Miembros de clase ● Son variables que existen en la clase y solo existe una sola copia para todas las instancias. ● El valor es compartido y el mismo para todas las instancias. ● Estas variables existen AÚN que no exista ni una instancia de esa clase. Lic. Nancy Michelle Torres Villanueva 10
  • 11. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Miembros de instancia y clase public class Circulo { //variable de clase static double PI = 3.14; //variables de instancia double x; double y; double radio; } ● Lic. Nancy Michelle Torres Villanueva 11
  • 12. TALLER DE PROGRAMACIÓN DE SISTEMAS public class Circulo { //variable de clase static double PI = 3.14; //variables de instancia double x; double y; double radio; double area() { return PI*radio*radio; } static double pi() { return PI; } } Lic. Nancy Michelle Torres Villanueva 12
  • 13. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Miembros de instancia y clase ● Suponga la clase A con una variable de instancia y un método de clase: public class A { int x; static int cuadradoX() { return x*x; } } ● Esto marca error, ¿Por qué? Lic. Nancy Michelle Torres Villanueva 13
  • 14. TALLER DE PROGRAMACIÓN DE SISTEMAS public class A { public int inc(int j) { ++j; return j; } } ... A a; int j = 10, i; ... i = a.inc(j); ● ¿Cuánto vale i y j? Lic. Nancy Michelle Torres Villanueva 14
  • 15. TALLER DE PROGRAMACIÓN DE SISTEMAS Acceso a campos y métodos ● Campos y métodos de instancia ● A a = new A(); ● ... ● a.i = 5; ● a.imprime(); ● Campos y métodos de clase ● A.dato = 6; ● A.ejecuta(); Lic. Nancy Michelle Torres Villanueva 15
  • 16. TALLER DE PROGRAMACIÓN DE SISTEMAS Constructores ● Un constructor es un método especial que no devuelve ningún tipo de dato, que posee el mismo nombre de la clase y que tiene la finalidad de: ● Crear espacio en memoria para el objeto ● Inicializar las variables de instancia Lic. Nancy Michelle Torres Villanueva 16
  • 17. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Constructores class Clock { int hour; Clock() { hour = 12; } void setHour(int hour) { this.hour = hour; } } Lic. Nancy Michelle Torres Villanueva 17
  • 18. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Constructores ● Cuando un objeto es declarado para su uso posterior, es imperativo construir el objeto mediante una llamada al constructor. class A { A() { ... } } ... A a = new A(); Lic. Nancy Michelle Torres Villanueva 18
  • 19. TALLER DE PROGRAMACIÓN DE SISTEMAS class B{ int b; B() { b = 12; } } ... B b = new B(); B c = b; b.b = 15; System.out.println(c.b); //¿? Lic. Nancy Michelle Torres Villanueva 19
  • 20. TALLER DE PROGRAMACIÓN DE SISTEMAS La variable this ● Esta variable implícita siempre se refiere a la instancia actual. ● Por medio de esta referencia, se pueden acceder a los campos y métodos del objeto en turno. Lic. Nancy Michelle Torres Villanueva 20
  • 21. TALLER DE PROGRAMACIÓN DE SISTEMAS class Clock { int hour = 12; void setHour(int hour) { hour = hour; } } ... Clock c; ... c.setHour(24); ● ¿Cuánto vale c.hour? ● Lic. Nancy Michelle Torres Villanueva 21
  • 22. TALLER DE PROGRAMACIÓN DE SISTEMAS ... La variable this class Clock { int hour = 12; void setHour(int hour) { this.hour = hour; } } Lic. Nancy Michelle Torres Villanueva 22
  • 23. TALLER DE PROGRAMACIÓN DE SISTEMAS Sobrecarga de métodos ● Hay ocasiones que resulta útil tener un mismo identificador de método para diferentes método con diferente funcionalidad. Ejemplo: class Calculadora { double suma(double d1, double d2) { return d1 + d2; } int suma(int i1, int i2) { return i1 + i2; } } Lic. Nancy Michelle Torres Villanueva 23
  • 24. TALLER DE PROGRAMACIÓN DE SISTEMAS ... Sobrecarga de métodos ● De la misma forma, es posible definir sobrecarga para los constructores creando un repertorio amplio de maneras de construir un objeto. Lic. Nancy Michelle Torres Villanueva 24
  • 25. TALLER DE PROGRAMACIÓN DE SISTEMAS Tarea ● Investigar las diferencias de trabajar con clases estaticas o con instancias de clases. Lic. Nancy Michelle Torres Villanueva 25