Orientación a Objetos con Java SE

Slides:



Advertisements
Presentaciones similares
Curso de java básico (scjp)
Advertisements

Curso de java básico (scjp)
Curso de java básico (scjp)
Curso de java básico (scjp)
Curso de Java Capitulo 6: Cadenas y Arrays Profesor:
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
Programación Interactiva Fundamentos de Java. 2 Ejecución de un programa Para Java una clase ejecutable es aquella que es pública y tiene un método main()
Herencia en C#.
Uso de variables de tipo referencia
Lenguaje de programación Java
Arquitectura CLARO-TECNOTREE
Archivos Implementar un método que lea una secuencia de números enteros de un archivo y compute la cantidad de elementos leídos.
Introducción Abdelahad, Corina Natalia Abdelahad, Yanina Zoraida
La Programación Orientado a Objetos
Conceptos más avanzados de Programación Orientada a Objetos Programación 2005 Licenciatura de Lingüística y Nuevas Tecnologías.
Algoritmos y Estructura de Datos
1.2 Sintaxis del lenguaje Java.
UNIVERSIDAD LATINA (UNILA) ENCAPSULACION Y HERENCIA
Aplicación del paradigma orientado a objetos
Diseño y programación de
Algoritmo y Estructura de Datos I
Objetos y Clases en Java
Manipulación de caracteres e hileras de texto
PROGRAMACIÓN EN JAVA Curso-taller inicial de programación en JAVA Facultad de Estadística e Informática TEMA II.
Conceptos Básicos de Java
Material Elaborado por: Lic. Saily González. CONTENIDO 2.1- Estructura de una Aplicación JAVA 2.2- Elementos básicos de la Programación JAVA Comentarios.
HERENCIA.
Tema 7: Polimorfismo Antonio J. Sierra. Índice Introducción. Sobrecarga de métodos. Objetos como parámetros. Paso de argumentos. Devolución de objetos.
Modificadores.
POO Java Módulo 3 Elementos de programas Identificadores
Introducción a Java II.
Lic. Rosemary Torrico Bascopé
Clases y objetos La unidad fundamental de programación OO son las clases. Conjunto de métodos y semántica Qué se va a hacer POO Clase: que define la implementación.
Tema 6: Clases Antonio J. Sierra.
Conceptos Objeto Clase Atributo / Método Encapsulamiento Mensaje
SCJP Sun Certified Programmer for Java 6
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Jerarquía de Clases: Herencia, Composición y Polimorfismo
El lenguaje de programación Java
JAVA J.A.C..
Capitulo # 4 herencia PROGRAMACION III UNIVERSIDAD
Introducción a Java (2ª parte) - excepciones, colecciones, i/o, … -
Curso Programación en Java
DEFINICIÓN  Es una forma de entender un problema identificando las entidades principales que se encuentran en el.  Es una forma de desarrollar un sistema.
Programación orientada a objetos. El método main es el comportamiento por el cual comienzan todos los programas en Java, de la misma forma en la que C,
Programación orientada a objetos. Existen 3 niveles de visibilidad: ◦ public: significa que los atributos de una clase pueden ser accedidas desde fuera.
Metodología de Programación Ayudantía 5 lelagos.ublog.cl 2009.
EI, Profesor Ramón Castro Liceaga Agosto de 2005 UNIVERSIDAD LATINA (UNILA) PROGRAMACION ORIENTADA A OBJETOS EN JAVA (Optativa) CONCEPTOS DE PROGRAMACION.
Clases y Objetos en Java ELO329: Diseño y Programación Orientados a Objetos.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Detalles Generales sobre Java
Curso de Java Introducción al Paradigma Orientado a Objetos Prof. Ing. Guido Acosta.
Fundamentos de Programación
HERENCIA.
Tipo de relación entre clases Es uno de los aspectos que distinguen el paradigma de orientación a objetos frente a otros paradigmas. Mecanismo que,
Programación Orientada a Objetos: CLASES Y OBJETOS
Programación Orientada Objetos
Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.
Clases “ Es una Abstracción de un elemento del mundo real ”
Herencias Conceptos básicos i
Programación orientada a objetos La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos.
Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones Fundamentos de Programación Departamento.
Cómo empezar Java. ¡Cómo se divide la plataforma de desarrollo de Java?  Edición estándar (JSE)  Edición empresarial (JEE)  Edición de dispositivos.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
Programación I Clases. Paradigma POO La programación Orientada a objetos (POO) es una forma programar, más cercana a como expresaríamos las cosas en la.
Arrays, Cadenas y Vectores Tipos Genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 5 Versión
Programación en Java Introducción a Java. Reseña histórica Surge en 1991 por Sun Microsystems Desarrollado para electrodomésticos Se buscaba un código.
Transcripción de la presentación:

Orientación a Objetos con Java SE

Orientación a Objetos, Introducción al Framework de Java CAPITULO 1 Orientación a Objetos, Introducción al Framework de Java

Paradigmas (I) Paradigma: es un modelo resultado de usos y costumbres, y esta vigente hasta que es desplazado por otro. Paradigma de Programación: son la forma que determinan los métodos y las herramientas que un programador usara en el desarrollo de un software.

Paradigmas (II) Paradigma Orientado a Objetos: Utiliza objetos como elemento fundamental del desarrollo. Nos permite pensar los problemas de la realidad en términos de objetos.

Conceptos Básicos POO Clase: es una plantilla para la creación de objetos. También es una agrupación de objetos que comparten características, comportamiento y relaciones Objeto: es una abstracción de cualquier cosa de la realidad. Mensaje: permite la comunicación entre objetos.

Características Fundamentales del POO Abstracción: separar elementos (al menos mentalmente) para poder verlos de forma singular. Encapsulamiento: a veces se lo llama ocultamiento, la idea es mantener ocultas la forma en que se realizan las operaciones. Abstracción: es tomar lo que importa de un elemento para el sistema que estamos modelando. Ejemplo: si estamos modelando un sistema de registro de personas, puede no interesarnos los hobbies o la religion a la que pertenece. Encapsulamiento:  se encarga de mantener ocultos los procesos internos que necesita para hacer lo que sea que haga, dándole al programador acceso sólo a lo que necesita.  ventajas: - Lo que hace el usuario puede ser controlado internamente(incluso sus errores), evitando que todo colapse por una intervención indeseada (tú no quieres que tu mamá, que no tiene ni idea de electrónica, abra tu televisor y empiece a jugar con los circuitos paracambiar los canales manualmente ¿verdad?). - al hacer que la mayor parte del código esté oculto, puedes hacer cambios y/o mejoras sin que eso afecte el modo como los usuarios van a utilizar tu código. Sólo tienes que mantener igual la forma de acceder a él (en el caso del control de la tele, que los botones sigan siendo los mismos y que el botón de “apagado” no cambie el volumen). Por cierto, estas puertas de acceso que das a los usuarios son lo que se conoce como interfaz.

Características Fundamentales del POO Herencia: es la capacidad que tienen las clases de derivar sus objetos y operaciones. Subclases y Jerarquía de Clases. Relaciones del tipo ES-UN. Polimorfismo: hace referencia a la forma en que los objetos se comportan de diferente manera ante un mismo mensaje. Herencia: ejemplo: el hombre es un animal. Polimorfismo: por ejemplo la clase Impresor puede tener como hija Monitor e Impresora y ante el mismo mensaje mostrar datos uno lo imprime en una hoja y el otro en la pantalla del monitor.

Clases en Java (I) Declaración <Modificador_Acceso> <final | abstract> class Nombre_Clase <extends nombre_clase_padre> <implements nombre_interface>{ //atributos //operaciones }

Clases en Java (II) Modificadores de Acceso friendly: no lleva el modificador explicito, es un acceso por defecto. Accesible solo por clases que se encuentran en el mismo paquete. public: permite acceder a la clase desde otras clases aunque estas se encuentren en otro paquete.

Clases en Java (III) Otros Modificadores abstract: esta clase no puede ser instanciada, es decir no se pueden crear objetos de la misma. final: al declarar la clase con este modificador se evita que puedan crearse subclases de la misma.

Atributos Definición <Modificador de acceso> tipo_dato nombre_atributo <= valor_inicial>; tipo_dato: puede ser un tipo de dato primitivo o una instancia de una clase.

Métodos Definición <Modificador de acceso> tipo_retorno nombreMetodo(<lista de parámetros>) { //cuerpo del método } Sobrecarga Redefinición (Override)

Modificadores de métodos y atributos (I) Modificadores de acceso: public: puede acceder a todo el mundo a esa variable. friendly: puede ser accedida por cualquier miembro del package. protected: solo pueden acceder a ella las clases hijas de la que posee las variables y las clases del mismo paquete. private: solo pueden acceder a la variable las instancias de la misma clase.

Modificadores de métodos y atributos (II) Resumiendo Visibilidad Public Protected Friendly Private Desde la misma clase Si De otra clase en el mismo paquete No Desde una subclase en el mismo paquete Subclase en otro paquete Si, por herencia No-Subclase fuera del paquete

Modificadores de métodos y atributos (III) static: el método o los atributos son declarados de clase y no de instancia. final: el valor del atributo no se puede modificar mediante operaciones realizadas en los métodos. En el caso de un método hace que no se pueda redefinir en clases hijas. abstract: es un método que no tiene implementación dentro de una clase, es decir, no tiene funcionalidad. Una clase abstracta tiene al menos un método abstracto.

Constructores (I) Son métodos. El nombre coincide con el nombre de la clase. Nunca devuelven un tipo de dato. Se emplean para inicializar los valores de los objetos y realizar las operaciones que sean necesarias para la generación de este objeto Admite sobrecarga. Cuando creamos un objeto podemos invocar al constructor que más nos convenga. No se pueden redefinir. No pueden ser final, abstract o static

Constructores (II) Tipos: - Constructor por defecto - Constructor con parámetros - Constructor copia.

Un objeto es una instancia de una clase Objetos Un objeto es una instancia de una clase Los objetos tienen: Estado: definido por sus atributos Comportamiento: definido por sus operaciones Identidad: permite identificar un objeto de entre varios.

Objetos en Java (I) Como crearlos MiClase miInstancia = new MiClase(); El operador new: Reserva memoria para el nuevo objeto. Inicializa el objeto a traves de su constructor Retorna la referencia al nuevo objeto.

Objetos en Java (II) Acceso a atributos y métodos miInstancia.atributoUno; miInstancia.operacionUno(); Objeto actual(this): Es una variable especial de sólo lectura que proporciona Java. Contiene una referencia al objeto en el que se usa dicha variable. this.atributoUno; this.operacionUno();

Estructuras de Control Estructuras de selección If – Else if – else switch Estructuras de Iteración While Do-while For/ for-each

Plataforma Java

Framework Java Paquetes Java estándar java.lang http://docs.oracle.com/javase/6/docs/api/java/lang/package-summary.html java.io http://docs.oracle.com/javase/6/docs/api/java/io/package-summary.html java.util http://docs.oracle.com/javase/6/docs/api/java/util/package-summary.html java.awt http://docs.oracle.com/javase/6/docs/api/java/awt/package-summary.html java.sql http://docs.oracle.com/javase/6/docs/api/java/sql/package-summary.html java.net http://docs.oracle.com/javase/6/docs/api/java/net/package-summary.html

java.io

java.util

java.lang

Strings (I) Las cadenas de texto en java son representadas a través de instancias de la clase String. En base al constante uso de los Strings, se crean sin llamar a su constructor. String cadena = “Hola mundo!”; String cadena2 = new String(“Hola mundo!”); Los Strings son inmutables. Es decir no se pueden modificar.

Strings (II) La longitud de una cadena puede conocerse a partir del metodo length() String saludo = “Hola”; int longitud = saludo.length(); Obtener caracteres de una cadena con el método charAt() char primerChar = saludo.chartAt(0); 1 2 3 H o l a

Strings (III) Concatenacion con ‘+’ o concat(cadena) Extraer partes de una cadena con substring() Comparaciones, con equals() y compareTo() Los dígitos van antes que todas las letras. Las letras mayúsculas van antes que todas las minúsculas. El carácter blanco va antes que los dígitos y las letras compareTo() usarlo en conjunto con toUpperCase() o toLowerCase()

Strings (IV) Carácter de escape: sirve para indicar que se debe imprimir un carácter especial, es el símbolo \ (barra invertida) \” Comillas dobles \’ Comilla simple \n Salto de línea \r Ir al principio de la línea \t Tabulación \\ Barra invertida

Conversiones toUpperCase() toLowerCase() trim() replace() split() Strings (V) Conversiones toUpperCase() toLowerCase() trim() replace() split()

StringBuffer StringBuilder Diferencias Comparación con String Strings (VI) StringBuffer StringBuilder Diferencias Comparación con String

Clases Wrapper (I) Java define diferentes tipos de datos, los cuales son los tipos de datos primitivos. Son primitivos porque están integrados al sistema. No son clases y son mas eficientes. Las clases de envoltura o clases wrapper encapsulan a los tipos de datos primitivos para añadir funcionalidad. Su uso es menos eficiente.

Parametro Constructor Clases Wrapper (II) Tipo Primitivo Clase Wrapper Parametro Constructor boolean Boolean boolean or String byte Byte byte or String char Character double Double double or String float Float float, double, or String int Integer int or String long Long long or String short Short short or String