PDF de programación - Curso de Programación en Java - Introducción a la Programación orientada a objetos

Imágen de pdf Curso de Programación en Java - Introducción a la Programación orientada a objetos

Curso de Programación en Java - Introducción a la Programación orientada a objetosgráfica de visualizaciones

Publicado el 9 de Mayo del 2017
545 visualizaciones desde el 9 de Mayo del 2017
1,4 MB
6 paginas
Creado hace 8a (22/01/2012)
22/01/12
 

Contenidos
 

!   Fundamentos
 de
 la
 POO
 
!   Comportamiento
 y
 estado
 
!   Clases
 y
 objetos
 en
 Java
 

Introducción
 a
 la
 

programación
 orientada
 a
 

objetos
 

Curso
 de
 Programación
 en
 Java
 


 

 

Luis
 Guerra
 

l.guerra@upm.es
 


 

Enero
 2012
 


 

Fundamentos
 de
 la
 POO
 

Introducción
 

!   Un
 paradigma
 es
 una
 forma
 de
 afrontar
 la
 construcción
 de
 

código
 soGware
 
!   No
 hay
 paradigmas
 mejores
 ni
 peores
 
!   Todos
 Lenen
 sus
 ventajas
 e
 inconvenientes
 

!   Hay
 disLntos
 paradigmas:
 POO,
 Estructurado,
 Funcional,
 

Lógico,
 etc
 

Programación
 orientada
 a
 objetos
 

UML
 (Unified
 Modeling
 Language)
 

!   Facilidad
 de
 diseño
 y
 relación
 con
 el
 mundo
 real
 
!   Reusabilidad
 y
 facilidad
 de
 mantenimiento
 
!   Sistemas
 más
 complejos
 

!   Abstracción
 
!   Trabajo
 en
 equipo
 

!   Del
 lenguaje
 máquina
 hacia
 el
 mundo
 real
 
!   Resuelve
 problemas
 complicados.
 No
 está
 pensado
 para
 tareas
 

sencillas
 

!   Lenguaje
 unificado
 de
 

modelado
 

!   “Planos”
 de
 la
 aplicación.
 
No
 sirve
 para
 desarrollar,
 
sino
 para
 describir
 (análisis
 
y
 diseño)
 

!   Se
 uLlizan
 diferentes
 

diagramas.
 (13
 Lpos
 en
 
UML
 2.0)
 

1
 

Programación
 orientada
 a
 objetos
 

Objetos
 y
 clases
 

Objeto
 

1
 

Fruta
 

!   Objetos:
 Elementos
 que
 
interactúan
 entre
 sí
 para
 
conseguir
 un
 fin
 
!   Autónomos
 
!   Con
 una
 funcionalidad
 

concreta
 definida
 
Instancias
 de
 una
 clase
 

!  

Objeto
 

2
 

!   Clases
 

!   Especificación
 de
 un
 

conjunto
 de
 elementos
 
!   Todo
 objeto
 pertenece
 a
 

una
 clase
 

Objeto
 

3
 

Programa
 

Objetos
 y
 clases
 

Objetos
 y
 clases
 

!   Los
 objetos
 Lene
 propiedades
 que
 los
 disLnguen
 

!   Comunes
 a
 todos
 los
 de
 su
 clase
 
!   Propias
 de
 cada
 uno
 

!   Los
 objetos
 interactúan
 entre
 sí
 por
 medio
 de
 mensajes
 
!   Los
 objetos
 representan
 los
 conceptos
 fundamentales
 del
 

programa,
 y
 de
 su
 interacción
 surge
 la
 funcionalidad
 

Otros
 conceptos
 importantes
 

!   Encapsulamiento
 
!   Polimorfismo
 
!   Herencia
 
!   …
 

Se
 verán
 mas
 adelante
 

!   Clases
 

!   Representan
 conceptos
 o
 enLdades
 significaLvas
 de
 un
 problema
 
!   Se
 pueden
 ver
 como
 planLllas
 para
 definir
 elementos
 (objetos)
 
!  


 Pueden
 estar
 directamente
 relacionadas
 unas
 con
 otras
 

!   Objetos
 

!   Elementos
 con
 comportamiento
 definido
 en
 la
 clase
 y
 estado
 

concreto
 
Instancias
 de
 clase
 
Interactúan
 por
 medio
 de
 mensajes
 

!  
!  

Comportamiento
 y
 estado
 

22/01/12
 

2
 

22/01/12
 

Métodos
 y
 atributos
 

Atributos
 

!   Comportamiento:
 Describe
 los
 servicios
 que
 proporciona
 una
 

clase
 (lo
 que
 se
 puede
 hacer
 con
 ella).
 Son
 los
 métodos.
 
!   El
 comportamiento
 disLngue
 a
 los
 objetos
 de
 una
 clase
 de
 los
 de
 

otra
 

!   Describen
 el
 estado
 interno
 de
 cada
 objeto
 concreto
 
!   Pueden
 ser:
 

!   Tipos
 básicos
 (int,
 boolean,
 short,
 etc)
 
! Arrays
 de
 elementos
 
!   Otros
 objetos
 

!   Estado:
 Describe
 el
 la
 situación
 interna
 del
 objeto.
 Existen
 
varias
 formas
 de
 definir
 disLntos
 estados.
 Son
 los
 atributos
 
!   El
 estado
 disLngue
 a
 los
 objetos
 de
 la
 misma
 clase:
 cada
 uno
 Lene
 

su
 estado
 

Atributos
 y
 variables
 

Métodos
 

!   Atributo
 de
 instancia:
 Definido
 para
 las
 instancias
 de
 una
 clase.
 

Una
 copia
 por
 objeto
 

!   Atributo
 de
 clase:
 Definido
 para
 la
 clase.
 Una
 copia
 por
 clase
 

(común
 para
 todos
 los
 objetos)
 

static int numero = 5;

!   Variable
 local:
 Definida
 dentro
 del
 cuerpo
 de
 un
 método.
 De
 

ámbito
 restringido
 

!   Definen
 el
 comportamiento
 de
 los
 objetos
 de
 una
 clase
 
!   Devuelven
 un
 resultado
 
!   Pueden
 necesitar
 parámetros
 


 
tipo_retorno nombre_método (parámetros) {

código del método

}
 

Métodos
 habituales
 

Métodos
 habituales
 

!   Constructor
 

!   Se
 ejecuta
 al
 crear
 un
 objeto
 
!   Sirve
 para
 inicializar
 un
 objeto
 al
 crearlo
 
!   Existe
 sobrecarga
 (disLntos
 parámetros)
 (para
 cualquier
 método)
 
!   Coincide
 con
 el
 nombre
 de
 la
 clase
 y
 no
 devuelve
 nada
 por
 

definición
 (no
 se
 indica
 el
 Lpo
 de
 retorno)
 

!   Destructor
 

!   Se
 ejecuta
 al
 crear
 destruir
 un
 objeto
 
!   No
 se
 suele
 usar:
 Java
 destruye
 los
 objetos
 automáLcamente
 

(Recolector
 de
 Basura)
 

!   Se
 Lene
 que
 sobrescribir
 
!   No
 devuelve
 nada
 por
 definición
 

void finalize()

3
 

22/01/12
 

Métodos
 habituales
 

Uso
 de
 objetos
 e
 interacción
 

!   Punto
 de
 entrada
 

!   Método
 que
 se
 invoca
 al
 comienzo
 del
 programa
 
!   Al
 menos
 una
 clase
 del
 programa
 debe
 tenerlo
 (clase
 principal)
 
!   Solo
 se
 ejecuta
 el
 de
 la
 clase
 principal
 
!   Varias
 clases
 pueden
 tener
 punto
 de
 entrada,
 pero
 solo
 se
 

ejecutará
 el
 de
 una
 de
 ellas
 



public static void main(String[] args)

Clases
 y
 objetos
 en
 Java
 

!   Los
 objetos
 son
 instanciaciones
 de
 las
 clases.
 Es
 necesario
 

realizar
 dicha
 instanciación
 para
 poder
 usarlos
 

!   Se
 comunican
 entre
 si
 mediante
 paso
 de
 mensajes
 
!   La
 invocación
 de
 los
 métodos
 es
 la
 manera
 en
 la
 que
 se
 realiza
 

el
 paso
 de
 mensajes
 

Declaración
 de
 una
 clase
 

public class NombreClase {



// Atributos
tipo atributo1;
tipo atributo2;

// Métodos
tSalida nombreMetodo1 (params) {

}
tSalida nombreMetodo2 (params) {

}


// Contenido método 1

// Contenido método 2



}

Declaración
 de
 una
 clase
 

Creación
 de
 objetos
 

public class Perro {



// Atributos
String nombre;
int edad;



}

// Métodos
Perro(String nom) {

}
void ladrar() {

}

this.nombre = nom;

System.out.println(“¡Guau!”);

!   Para
 poder
 usar
 un
 objeto
 hay
 que
 crearlo:
 


clase identificador = new clase();



Perro miPerro = new Perro(“Pancho”);

4
 

22/01/12
 

Operador
 .
 

this
 

!   El
 operador
 .
 (punto)
 permite
 acceder
 a
 los
 miembros
 de
 una
 

clase.
 

!   Se
 usa
 tanto
 para
 atributos
 como
 para
 métodos.
 

Perro miPerro = new Perro(“Pancho”);
miPerro.edad = 5;
miPerro.ladrar();

!   Para
 referirse
 a
 un
 objeto
 desde
 si
 mismo,
 se
 usa
 la
 palabra
 

reservada
 this
 


 
public class Perro {

String nombre;

Perro(String nom) {

}

this.nombre = nom;

}
 

Uso
 de
 objetos
 

Acceso
 directo
 a
 atributos
 

!   Una
 vez
 creado
 (instanciado)
 un
 objeto,
 podemos
 enviarle
 

mensajes
 y
 modificar
 su
 estado
 
 
!  
!   Accediendo
 a
 sus
 atributos
 (no
 se
 debe
 hacer)
 

Invocando
 métodos
 

!   El
 acceso
 directo
 a
 atributos
 no
 es
 recomendable,
 porque
 

revela
 la
 estructura
 interna
 del
 objeto
 
!   Los
 métodos
 definen
 como
 se
 debe
 usar
 un
 objeto.
 PermiLr
 el
 

acceso
 a
 los
 atributos
 es
 “dar
 vía
 libre”
 a
 manipular
 su
 estado
 sin
 
control
 

Perro miPerro = new Perro(“Pancho”);
miPerro.edad = 5;
miPerro.ladrar();


 

!   En
 su
 lugar
 se
 deben
 definir
 métodos
 que,
 de
 forma
 genérica,
 
modifiquen
 el
 estado
 de
 acuerdo
 a
 consideraciones
 semánLcas
 

!   Se
 debe
 prohibir
 el
 acceso
 a
 los
 atributos
 

Cohesión
 y
 acoplamiento
 

Encapsulación
 

!   Cohesión:
 Grado
 de
 relación
 entre
 las
 diferentes
 caracterísLcas
 

de
 un
 objeto
 
!   Objeto
 con
 una
 función
 muy
 bien
 definida:
 muy
 cohesionado
 
!   Objeto
 con
 muchas
 funciones
 no
 relacionadas:
 poco
 cohesionado
 
!   Acoplamiento:
 Grado
 de
 dependencia
 entre
 diferentes
 objetos
 

!   Programa
 en
 el
 que
 todas
 las
 clases
 Lene
 funciones
 disLntas
 y
 
!   Programa
 en
 el
 que
 todas
 las
 clases
 parLcipan
 en
 todas
 las
 tareas:
 

definidas:
 Poco
 acoplado
 

muy
 acoplado
 

!   Se
 debe
 maximizar
 la
 cohesión
 de
 cada
 objeto
 y
 minimizar
 el
 

acoplamiento
 entre
 clases
 disLntas
 

!   Puede
 (y
 suele)
 haber
 disLntos
 niveles
 de
 visibilidad:
 

! public:
 se
 puede
 acceder
 desde
 cualquier
 lugar
 
! private:
 sólo
 se
 puede
 acceder
 desde
 la
 propia
 clase
 
! pr
  • Links de descarga
http://lwp-l.com/pdf3437

Comentarios de: Curso de Programación en Java - Introducción a la Programación orientada a objetos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad