SlideShare una empresa de Scribd logo
Desarrollo de Funciones en el Sistema Informático
                                                        Curso 2009/2010




Programación orientada a objetos (I)
       Presentación en diapositivas (PRE09)
Desarrollo de Funciones en el Sistema Informático
                                                                Curso 2009/2010



           Las clases en Java (I)
En Java, todo el código está incluido en clases
cómo crear una clase:
               clase
class ejemploClase
{
declaración de atributos                      variables miembro
...
declaración de métodos                        funciones miembro
}                                             aquí no es preciso el ;

             fichero con el nombre ejemploClase.java
sensible a mayúsculas (EjemploClase es diferente a ejemploClase)
Desarrollo de Funciones en el Sistema Informático
                                                                            Curso 2009/2010



            Las clases en Java (y II)
Es posible:
   class clase1 {}            Restricciones en este caso:
   class clase2 {}            ● Sólo puede haber 1 clase pública
                              ● La clase pública será la que dé el nombre al archivo
   class clase3 {}
        fichero clase3.java




Aunque lo habitual es:
   class clase1 {}                  class clase2 {}                  class clase3 {}
        fichero clase1.java               fichero clase2.java             fichero clase3.java
Desarrollo de Funciones en el Sistema Informático
                                                                      Curso 2009/2010



         Declaración de objetos (I)
Un objeto se declara de la misma manera que una variable:
                                 Alumno juan;
            nombre de la clase
                                                nombre del objeto

            juan es una referencia a un objeto de la clase Alumno



La declaración no crea espacio en memoria, es decir:
                                     juan
                                                     null

Hay que reservar memoria si queremos utilizar el objeto (new):

        juan = new Alumno(“Juan Pérez”, “Castellón”, true);
Desarrollo de Funciones en el Sistema Informático
                                                                              Curso 2009/2010



           Declaración de objetos (y II)
Profundicemos en su funcionamiento. Con el siguiente código:
●   Línea 1. Alumno juan;
●   Línea 2. juan = new Alumno (“Juan Pérez”, “Castellón”, true);
●   Línea 3. Alumno alfredo;
●   Línea 4. alfredo = juan;


Gráficamente.
Línea 1.          juan
                               null


Línea 2.          juan
                               Alumno (“Juan Pérez”, “Castellón”, true)


Línea 3.          alfredo
                                  null


Línea 4.          juan                                                         alfredo
                               Alumno (“Juan Pérez”, “Castellón”, true)
Desarrollo de Funciones en el Sistema Informático
                                                                             Curso 2009/2010



                   Acceso a los objetos
●   El acceso se realiza a través del operador . (punto)
●   Sirve para sus atributos y para sus métodos
    Ejemplos:
          int edad;
          boolean trabaja;

          trabaja = juan.ocupado;      // acceso al atributo ocupado
          edad = juan.calculaEdad();   // acceso al método calculaEdad()


●
    Permite el uso del objeto this (objeto dentro del método)
    Ejemplo:
     int calculaEdad() {
             GregorianCalendar hoy = new GregorianCalendar();

            hoy.getTime();
            return (this.fechaNacimiento – hoy)     // acceso al atributo fechaNacimiento
      }
Desarrollo de Funciones en el Sistema Informático
                                                                       Curso 2009/2010



                 Destrucción de objetos
●
    Un objeto se debe eliminar cuando se deja de utilizar.
●   Es un proceso automático realizado por el garbage collector.
●
    Si se utilizan otros recursos (por ejemplo ficheros) se debe:
        ●
            Añadir método finalize(). Uso:
            static void finalize()           // siempre de tipo static void
            {
                … // instrucciones para liberar los recursos
            }
●
    El método finalize() se llamará automáticamente por el recolector.
Desarrollo de Funciones en el Sistema Informático
                                                                  Curso 2009/2010



              Constructores de copia
●   recordemos que...
    … la asignación entre objetos NO IMPLICA copia.
●   por tanto...
    … siempre se accede al mismo contenido.



●
    y eso significa que...
                   NO EXISTEN CONSTRUCTORES DE COPIA
Desarrollo de Funciones en el Sistema Informático
                                                                                                                          Curso 2009/2010




      Programación orientada a objetos (I)
                                          Presentación en diapositivas (PRE09)




                   Esta obra de Cristian Jorge Garcia Marcos está bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 España de Creative Commons.
                   Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-sa/3.0/es/ o envíe una carta a Creative Commons, 171
                   SecondStreet, Suite 300, San Francisco, California 94105, USA



Basado en el documento:
López, J. A. P., Xirgo, L. R. (2008, February 18). Introducción al desarrollo de software. Retrieved February 25, 2010, from UOCOpenCourseWare Web site: http://ocw.uoc.edu/informatica-
tecnologia-y-multimedia/introduccion-al-desarrollo-de-software, publicado bajo una licencia GNU Free Document License.

Más contenido relacionado

PDF
Programación en Java (y II)
DOCX
Cuestionario
PDF
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
PPTX
DOCX
cuestionario de Programación
PDF
Programación Orientada a Objetos
PPT
Curso Java Inicial 2 - Introducción y Sintaxis
PDF
Cuestionario
Programación en Java (y II)
Cuestionario
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
cuestionario de Programación
Programación Orientada a Objetos
Curso Java Inicial 2 - Introducción y Sintaxis
Cuestionario

La actualidad más candente (20)

PPT
Tipos de datos
PPT
Curso Java Inicial 4 Poo En Java
PPTX
Programacion Orientada a Objetos
DOCX
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
PPT
PPTX
Programacion orientada a objetos Java
PDF
10. programación orientada a objetos (java)
PPT
Componentes en-poo
PDF
Clases y objetos de java
PPT
Programacion Orientada a Objetos
PPT
Fundamentos de programación Java
PDF
Curso de iniciacion a la programacion con visual basic net
PDF
Elementos básicos de la programación orientada a objetos.
PPTX
Diapositiva estructura de datos unidad 1
PPSX
Clase n°1 java
PPTX
Diapositivas de la poo
PPTX
Programacion Orientada a Objetos IE
PDF
Metodología de la programación orientada a objetos con c++ prev
PDF
Guia1 pii
PDF
Definición de clases en POO
Tipos de datos
Curso Java Inicial 4 Poo En Java
Programacion Orientada a Objetos
CUESTIONARIO SOBRE PROGRAMACIÓN RELACIONADA A OBJETOS
Programacion orientada a objetos Java
10. programación orientada a objetos (java)
Componentes en-poo
Clases y objetos de java
Programacion Orientada a Objetos
Fundamentos de programación Java
Curso de iniciacion a la programacion con visual basic net
Elementos básicos de la programación orientada a objetos.
Diapositiva estructura de datos unidad 1
Clase n°1 java
Diapositivas de la poo
Programacion Orientada a Objetos IE
Metodología de la programación orientada a objetos con c++ prev
Guia1 pii
Definición de clases en POO
Publicidad

Destacado (20)

PDF
1 Curso POO (Programación orientada a objetos) en java - problemas y proceso
PDF
8b Curso de POO en java - paso de diagrama clases a java 1
PPT
POO: Herencia, Abstraccion y Polimorfismo
PPTX
PDF
Programación en Java (I)
PPTX
Constructores en Java
DOCX
Contructores en java(grupo 8)
PPTX
Constructores en Java
 
PPTX
Constructores en java(grupo 8)
PPTX
Programación Orientada Objetos Java Unidad 1
PPTX
06 Paquetes Y Java Classpath
PPTX
Cafeteando east
PPTX
02 Bases Del Lenguaje Java
PPT
FPJUCE - Capitulo2
PDF
Tutorial eclipse 1
PPTX
13 Networking
PPTX
Programación orientada a objetos
PPTX
Conceptos de la poo
DOCX
Entrega final
DOCX
Analisis orientado a objetos
1 Curso POO (Programación orientada a objetos) en java - problemas y proceso
8b Curso de POO en java - paso de diagrama clases a java 1
POO: Herencia, Abstraccion y Polimorfismo
Programación en Java (I)
Constructores en Java
Contructores en java(grupo 8)
Constructores en Java
 
Constructores en java(grupo 8)
Programación Orientada Objetos Java Unidad 1
06 Paquetes Y Java Classpath
Cafeteando east
02 Bases Del Lenguaje Java
FPJUCE - Capitulo2
Tutorial eclipse 1
13 Networking
Programación orientada a objetos
Conceptos de la poo
Entrega final
Analisis orientado a objetos
Publicidad

Similar a Programación orientada a objetos (I) (20)

PPTX
JAVA_BASICO_modo_consola_introduccion.pptx
PDF
Javascript OOP
PPT
Programacion de algoritmos
PPT
Modelo Persistente
PDF
Programacion Orientada a Obejtos C++
PPTX
Clases y funciones_especiales
PDF
Apunte paradigma orientado a objetos
PDF
Sesion 07 nivel_acceso_miembros_clases
PPTX
Programación Orientada a Objetos - Unidad 2: clases y objetos
PPT
DOC
PPTX
modularidad de programación 2da parte (3) (1).pptx
PPT
PDF
PDF
JAVA_BASICO_modo_consola_introduccion.pptx
Javascript OOP
Programacion de algoritmos
Modelo Persistente
Programacion Orientada a Obejtos C++
Clases y funciones_especiales
Apunte paradigma orientado a objetos
Sesion 07 nivel_acceso_miembros_clases
Programación Orientada a Objetos - Unidad 2: clases y objetos
modularidad de programación 2da parte (3) (1).pptx

Último (20)

PDF
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
PDF
Lección 6 Escuela Sab. A través del mar rojo.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
PPT
Cosacos y hombres del Este en el Heer.ppt
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PPTX
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
biología es un libro sobre casi todo el tema de biología
PDF
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
PDF
Escuelas Desarmando una mirada subjetiva a la educación
PDF
ciencias-1.pdf libro cuarto basico niños
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
PDF
Fundamentos_Educacion_a_Distancia_ABC.pdf
PPTX
caso clínico iam clinica y semiología l3.pptx
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
Lección 6 Escuela Sab. A través del mar rojo.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
Cosacos y hombres del Este en el Heer.ppt
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
DI, TEA, TDAH.pdf guía se secuencias didacticas
AGENTES PATÓGENOS Y LAS PRINCIPAL ENFERMEAD.pptx
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
biología es un libro sobre casi todo el tema de biología
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
Escuelas Desarmando una mirada subjetiva a la educación
ciencias-1.pdf libro cuarto basico niños
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
Fundamentos_Educacion_a_Distancia_ABC.pdf
caso clínico iam clinica y semiología l3.pptx

Programación orientada a objetos (I)

  • 1. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Programación orientada a objetos (I) Presentación en diapositivas (PRE09)
  • 2. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Las clases en Java (I) En Java, todo el código está incluido en clases cómo crear una clase: clase class ejemploClase { declaración de atributos variables miembro ... declaración de métodos funciones miembro } aquí no es preciso el ; fichero con el nombre ejemploClase.java sensible a mayúsculas (EjemploClase es diferente a ejemploClase)
  • 3. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Las clases en Java (y II) Es posible: class clase1 {} Restricciones en este caso: class clase2 {} ● Sólo puede haber 1 clase pública ● La clase pública será la que dé el nombre al archivo class clase3 {} fichero clase3.java Aunque lo habitual es: class clase1 {} class clase2 {} class clase3 {} fichero clase1.java fichero clase2.java fichero clase3.java
  • 4. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Declaración de objetos (I) Un objeto se declara de la misma manera que una variable: Alumno juan; nombre de la clase nombre del objeto juan es una referencia a un objeto de la clase Alumno La declaración no crea espacio en memoria, es decir: juan null Hay que reservar memoria si queremos utilizar el objeto (new): juan = new Alumno(“Juan Pérez”, “Castellón”, true);
  • 5. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Declaración de objetos (y II) Profundicemos en su funcionamiento. Con el siguiente código: ● Línea 1. Alumno juan; ● Línea 2. juan = new Alumno (“Juan Pérez”, “Castellón”, true); ● Línea 3. Alumno alfredo; ● Línea 4. alfredo = juan; Gráficamente. Línea 1. juan null Línea 2. juan Alumno (“Juan Pérez”, “Castellón”, true) Línea 3. alfredo null Línea 4. juan alfredo Alumno (“Juan Pérez”, “Castellón”, true)
  • 6. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Acceso a los objetos ● El acceso se realiza a través del operador . (punto) ● Sirve para sus atributos y para sus métodos Ejemplos: int edad; boolean trabaja; trabaja = juan.ocupado; // acceso al atributo ocupado edad = juan.calculaEdad(); // acceso al método calculaEdad() ● Permite el uso del objeto this (objeto dentro del método) Ejemplo: int calculaEdad() { GregorianCalendar hoy = new GregorianCalendar(); hoy.getTime(); return (this.fechaNacimiento – hoy) // acceso al atributo fechaNacimiento }
  • 7. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Destrucción de objetos ● Un objeto se debe eliminar cuando se deja de utilizar. ● Es un proceso automático realizado por el garbage collector. ● Si se utilizan otros recursos (por ejemplo ficheros) se debe: ● Añadir método finalize(). Uso: static void finalize() // siempre de tipo static void { … // instrucciones para liberar los recursos } ● El método finalize() se llamará automáticamente por el recolector.
  • 8. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Constructores de copia ● recordemos que... … la asignación entre objetos NO IMPLICA copia. ● por tanto... … siempre se accede al mismo contenido. ● y eso significa que... NO EXISTEN CONSTRUCTORES DE COPIA
  • 9. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Programación orientada a objetos (I) Presentación en diapositivas (PRE09) Esta obra de Cristian Jorge Garcia Marcos está bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-sa/3.0/es/ o envíe una carta a Creative Commons, 171 SecondStreet, Suite 300, San Francisco, California 94105, USA Basado en el documento: López, J. A. P., Xirgo, L. R. (2008, February 18). Introducción al desarrollo de software. Retrieved February 25, 2010, from UOCOpenCourseWare Web site: http://ocw.uoc.edu/informatica- tecnologia-y-multimedia/introduccion-al-desarrollo-de-software, publicado bajo una licencia GNU Free Document License.