SlideShare una empresa de Scribd logo
Programación Orientada a Objetos
Índice
3
4
4
6
8
9
1 | Programación Orientada a Objetos
1.1 | Clases y Objetos
Objetos
Clases
Creación de objetos
1.2 | Constructores
Programación Orientada a Objetos
Programación Orientada a Objetos | TELEFÓNICA /
/ 3
La programación orientada a objetos (abreviadamente POO), es
pues la evolución natural de la programación estructurada. Y es que
cuandolasaplicacionessonmuygrandes,laaplicacióndelastécnicas
básicas de la programación estructurada resultan insuficientes para
poder desarrollar programas fiables y fáciles de mantener.
1. Programación Orientada a Objetos
La mayoría de los lenguajes de programación actuales son orientados a
objetos. El hecho de que un lenguaje sea orientado a objetos no solo implica
que trabaje con objetos, sino que además se pueden aplicar una serie de
características propias de la orientación a objetos, encaminadas a reutilizar
código en las aplicaciones, a que sean más fáciles de mantener y más fiables.
Seguidamente, vamos a presentar los conceptos fundamentales en
los que se basa este modelo de programación.
Programación Orientada a Objetos | TELEFÓNICA /
/ 4
Un lenguaje orientado a objetos se basa en el uso de clases y objetos para implementar la
funcionalidad de la aplicación, por eso estos conceptos serán los primeros que vamos a abordar en
este capítulo.
1.1 | Clases y Objetos
OBJETOS
Un objeto podemos imaginarlo como una “caja negra” que expone
al exterior una serie de funciones con las que poder realizar
operaciones, así como una serie de parámetros que permiten
configurar características del objeto.
A las funciones y procedimientos que expone el objeto se les llama
métodos, mientras que a las características se les conoce como
propiedades.
Para entender mejor el concepto, pongamos un ejemplo del mundo
real, que está lleno de objetos. Pensemos, por ejemplo, en un coche.
Un coche es un tipo de objeto que expone una serie de propiedades
como el color, la matricula, el peso, etc., además de una serie de
métodosparaoperarconelmismos,comoarrancar,acelerar,frenar…
Como este tenemos muchos otros ejemplos de objetos del mundo
real. Un objeto televisor tiene una serie de propiedades como el
número de pulgadas, si es o no 3D, etc., y también unos métodos
como encender, apagar o cambiar de canal.
Llevado este concepto al mundo de la programación, el objeto es
un elemento residente en memoria y al que accedemos desde el
programa a través de una variable. A través de las propiedades
podemos configurar características del objeto utilizando la siguiente
sintaxis:
Propiedades
Métodos
Programación Orientada a Objetos | TELEFÓNICA /
/ 5
variable_objeto.propiedad=valor //asignación de valor a
una propiedad
O
a= variable_objeto.propiedad //recuperación del valor de
una propiedad
En ambos casos, para asignar un valor a una propiedad y para leer el
valor de una propiedad, se utiliza la variable que contiene el objeto
seguido del operador punto (“.”) y el nombre de la propiedad.
Dado que los métodos representan operaciones sobre el objeto, la
llamada a estos ejecutará algún código internamente en el objeto.
Para llamar a los métodos de un objeto utilizamos la sintaxis:
Donde argumento1, argumento2 son los valores que el método
requiere para poder ejecutar la tarea.
Como vemos, la llamada a un método de un objeto es muy similar a
las llamadas a procedimientos y funciones, y es que, como veremos a
continuación, un método se implementa mediante procedimientos
y/o funciones. Esto significa que puede haber métodos, aquellos
que se creen mediante una función y devuelvan un resultado al
punto de llamada, en cuyo caso se deberá recoger el valor devuelto
por el mismo:
variable_objeto.metodo(argumento1, argumento2, ..)
res = variable_objeto.metodo(argumento1, argumento2, ..)
Programación Orientada a Objetos | TELEFÓNICA /
/ 6
CLASES
Losobjetosdisponendemétodos,quesonimplementadosmediante
funciones y procedimientos, y de propiedades, que vienen a ser
variables donde se almacenan las características de los objetos.
El lugar donde se define el código de estos métodos y propiedades es
la clase. A través de estos métodos y propiedades, la clase establece
el comportamiento de un determinado tipo de objeto
A partir de la clase se crean los objetos y sobre ellos se aplican los
métodos y propiedades definidos en la misma. La clase es, por tanto,
el molde a partir del cual se pueden construir los objetos, que son
los elementos que utilizaremos en los programas para poder hacer
uso de los métodos y propiedades.
clase
creación
objeto 1 objeto 2 objeto 2
creación creación
Programación Orientada a Objetos | TELEFÓNICA /
/ 7
Cada objeto podrá tener sus propios valores de propiedades,
mientras que el comportamiento de los métodos será el mismo en
cada objeto.
Para definir una clase mediante pseudocódigo, utilizaremos la
siguiente sintaxis:
Veamos un sencillo ejemplo de creación de una clase Calculadora con
la que podemos realizar operaciones básicas con dos números, como
Sumar, Restar, Multiplicar y Dividir. Además de cuatro métodos para
realizar las citadas operaciones, dispondrá de dos propiedades para
almacenar los operandos con los que van a trabajar los métodos de
la clase.
EstaseríalaimplementaciónenpseudocódigodelaclaseCalculadora:
Según se puede apreciar, los cuatro métodos se definen mediante el
mismo tipo de funciones que estudiamos durante la programación
modular, estas funciones operan con los datos almacenados en las
propiedades, que no son más que variables a las que se les añade la
palabra property
Class NombreClase
//definición del contenido de la clase
End Class
Class Calculadora
Property operando1 Integer
Property operando2 Integer
Function Sumar()
		Return operando1+operando2
End Function
Function Restar()
		Return operando1-operando2
End Function
Function Multiplicar()
		Return operando1*operando2
End Function
Function Dividir()
		Return operando1/operando2
End Function
End Class
Programación Orientada a Objetos | TELEFÓNICA /
/ 8
CREACIÓN DE OBJETOS
Laclasedefinelosmétodosypropiedades,peroparapoderhaceruso
de los mismos se necesita un objeto sobre el que poder aplicarlos.
Para crear un objeto de una clase, utilizaremos un operador llamado
New, que es el que se emplea en la mayoría de los lenguajes de
programación. La manera de utilizarlo sería la siguiente:
Como vemos, a continuación del operador se indica el nombre de la
clase de la que queremos crear el objeto, seguido de los paréntesis.
Esta instrucción creará un objeto en memoria y lo guardará en la
variable indicada a la izquierda del signo igual. Esta variable tendrá
que ser declarada con el tipo de la clase.
A partir de ahí, ya se puede utilizar la variable objeto para acceder a
propiedades y métodos.
Para ilustrarlo con un ejemplo, vamos a hacer un programa principal
que se encargue de leer dos números y, utilizando un objeto de la
clase Calculadora definida anteriormente, muestre los resultados
de las cuatro operaciones básicas sobre los números.
variable_objeto=New NombreClase()
Inicio
Datos:
Oper Calculadora //define una variable del tipo de
la clase,
				 //en ella se guardará el objeto
N1, N2 Integer
Sum, Res, Multi, Div Integer
Código:
Leer N1, N2
Oper=New Calculadora() //crea el objeto
//asinga valores leídos a las propiedades
Oper.operando1=N1
Oper.operando2=N2
//llama a los métodos para realizar los cálculos
Sum=Oper.Sumar()
Res=Oper.Restar()
Multi=Oper.Multiplicar()
Div=Oper.Dividir()
Mostrar “Suma:”, Sum
Mostrar “Resta:”, Res
Mostrar “Multiplicación:”, Multi
Mostrar “División:”, Div
Fin
Programación Orientada a Objetos | TELEFÓNICA /
/ 9
En el ejemplo podríamos haber prescindido de las variables Sum,
Res, Multi y Div:
Mostrar “Suma:”, Oper.Sumar()
Mostrar “Resta:”, Oper.Restar()
Mostrar “Multiplicación:”, Oper.Multiplicar()
Mostrar “División:”, Oper.Dividir()
1.2 | Constructores
Hemos visto en el ejemplo anterior que para poder utilizar los métodos que realizan las operaciones
es necesario primero establecer ciertas propiedades del objeto.
En muchos casos estas propiedades se establecen nada más crear
el objeto, por lo que sería muy cómodo poder hacerlo en la misma
instrucción de creación del objeto, en vez de tener que asignar
explícitamente cada propiedad. Esto es posible hacer utilizando
constructores.
Un constructor es un bloque de código que se define dentro de una
clase y que se ejecuta en el momento en que se crea un objeto de
dicha clase. Por tanto, es el lugar ideal para inicializar propiedades
de los objetos.
Como vemos, son parecidos a los procedimientos, pero sin la palabra
Sub. Además, el nombre del constructor debe ser igual al de la clase.
NombreClase(parametro1, parametro2)
Los constructores se definen de la siguiente manera:
Programación Orientada a Objetos | TELEFÓNICA /
/ 10
Por ejemplo, si queremos definir la clase Calculadora utilizando
constructor, quedaría de la siguiente manera:
Y ya no sería necesario asignar explícitamente los valores N1 y N2 a
las propiedades Operando1 y Operando2.
Una clase puede disponer de más de un constructor, lo que ofrecería
la posibilidad de inicializar objetos de distinta forma. Todos los
constructores tendrán el mismo nombre, que es el de la clase, pero
deberán diferenciarse en el número de parámetros o en el tipo de
los mismos.
Por ejemplo, podríamos incluir en la clase Calculadora dos
constructores, uno para inicializar cada propiedad con un valor y otro
que inicializaría las dos propiedades del objeto con el mismo valor:
Al hecho de poder definir más de un constructor en una clase se le
conoce como sobrecarga de constructores.
Oper=New Calculadora(N1, N2)
Calculadora(op1 Integer, op2 Integer)
operando1=op1
operando2=op2
End
Calculadora(op Integer)
operando1=op
operando2=op
End
Programacion Orientada Objetos.pdf

Más contenido relacionado

PPTX
Clase 1 - Programación orientada a Objetos (2).pptx
DOCX
Programacion orientada a objetos
DOCX
Que es
PDF
Fundamentos del Enfoque OO
PPS
PPT
Conceptos poo progra visual
PPTX
Programación Orientada a Objetos
DOCX
Diseño de Sistemas
Clase 1 - Programación orientada a Objetos (2).pptx
Programacion orientada a objetos
Que es
Fundamentos del Enfoque OO
Conceptos poo progra visual
Programación Orientada a Objetos
Diseño de Sistemas

Similar a Programacion Orientada Objetos.pdf (20)

PPTX
Fundamentos de la programación orientada a objetos
PPT
Clase 2
DOCX
Hgtyj
DOCX
Fasesdedesarrollodeunprograma
DOCX
Que es programación orientada a objeto
DOCX
PLANIFICACION SEMANA 3 DE PROGRAM Y BASE DE DATS SEGUNDO T1 T2.docx
PDF
Conceptos básicos de programación orientada a objetos (poo)
PDF
Practica retro java 28102013
DOCX
Programacion orientada a objetos
PPT
Poocpp2
DOCX
Definicion de objeto
PPTX
Programacion
PDF
PDF
Programacion
PPTX
Fundamentos de Programación Orientada a Objetos
DOC
Programación orientada a objetos
PDF
Programación Orientada a Objeto
PPTX
Diseña y construye programas orientados a objetos
DOCX
Introduccion a la POO
DOCX
PRESENTACION
Fundamentos de la programación orientada a objetos
Clase 2
Hgtyj
Fasesdedesarrollodeunprograma
Que es programación orientada a objeto
PLANIFICACION SEMANA 3 DE PROGRAM Y BASE DE DATS SEGUNDO T1 T2.docx
Conceptos básicos de programación orientada a objetos (poo)
Practica retro java 28102013
Programacion orientada a objetos
Poocpp2
Definicion de objeto
Programacion
Programacion
Fundamentos de Programación Orientada a Objetos
Programación orientada a objetos
Programación Orientada a Objeto
Diseña y construye programas orientados a objetos
Introduccion a la POO
PRESENTACION
Publicidad

Último (20)

DOCX
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
PDF
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
PPTX
caso clínico iam clinica y semiología l3.pptx
PDF
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
PDF
Híper Mega Repaso Histológico Bloque 3.pdf
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PDF
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
PDF
Punto Critico - Brian Tracy Ccesa007.pdf
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
PDF
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
Lección 6 Escuela Sab. A través del mar rojo.pdf
PDF
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
PDF
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
PDF
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
PDF
Tomo 1 de biologia gratis ultra plusenmas
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
caso clínico iam clinica y semiología l3.pptx
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
Híper Mega Repaso Histológico Bloque 3.pdf
DI, TEA, TDAH.pdf guía se secuencias didacticas
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
Integrando la Inteligencia Artificial Generativa (IAG) en el Aula
Punto Critico - Brian Tracy Ccesa007.pdf
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
Lección 6 Escuela Sab. A través del mar rojo.pdf
OK OK UNIDAD DE APRENDIZAJE 5TO Y 6TO CORRESPONDIENTE AL MES DE AGOSTO 2025.pdf
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
Tomo 1 de biologia gratis ultra plusenmas
Publicidad

Programacion Orientada Objetos.pdf

  • 2. Índice 3 4 4 6 8 9 1 | Programación Orientada a Objetos 1.1 | Clases y Objetos Objetos Clases Creación de objetos 1.2 | Constructores Programación Orientada a Objetos
  • 3. Programación Orientada a Objetos | TELEFÓNICA / / 3 La programación orientada a objetos (abreviadamente POO), es pues la evolución natural de la programación estructurada. Y es que cuandolasaplicacionessonmuygrandes,laaplicacióndelastécnicas básicas de la programación estructurada resultan insuficientes para poder desarrollar programas fiables y fáciles de mantener. 1. Programación Orientada a Objetos La mayoría de los lenguajes de programación actuales son orientados a objetos. El hecho de que un lenguaje sea orientado a objetos no solo implica que trabaje con objetos, sino que además se pueden aplicar una serie de características propias de la orientación a objetos, encaminadas a reutilizar código en las aplicaciones, a que sean más fáciles de mantener y más fiables. Seguidamente, vamos a presentar los conceptos fundamentales en los que se basa este modelo de programación.
  • 4. Programación Orientada a Objetos | TELEFÓNICA / / 4 Un lenguaje orientado a objetos se basa en el uso de clases y objetos para implementar la funcionalidad de la aplicación, por eso estos conceptos serán los primeros que vamos a abordar en este capítulo. 1.1 | Clases y Objetos OBJETOS Un objeto podemos imaginarlo como una “caja negra” que expone al exterior una serie de funciones con las que poder realizar operaciones, así como una serie de parámetros que permiten configurar características del objeto. A las funciones y procedimientos que expone el objeto se les llama métodos, mientras que a las características se les conoce como propiedades. Para entender mejor el concepto, pongamos un ejemplo del mundo real, que está lleno de objetos. Pensemos, por ejemplo, en un coche. Un coche es un tipo de objeto que expone una serie de propiedades como el color, la matricula, el peso, etc., además de una serie de métodosparaoperarconelmismos,comoarrancar,acelerar,frenar… Como este tenemos muchos otros ejemplos de objetos del mundo real. Un objeto televisor tiene una serie de propiedades como el número de pulgadas, si es o no 3D, etc., y también unos métodos como encender, apagar o cambiar de canal. Llevado este concepto al mundo de la programación, el objeto es un elemento residente en memoria y al que accedemos desde el programa a través de una variable. A través de las propiedades podemos configurar características del objeto utilizando la siguiente sintaxis: Propiedades Métodos
  • 5. Programación Orientada a Objetos | TELEFÓNICA / / 5 variable_objeto.propiedad=valor //asignación de valor a una propiedad O a= variable_objeto.propiedad //recuperación del valor de una propiedad En ambos casos, para asignar un valor a una propiedad y para leer el valor de una propiedad, se utiliza la variable que contiene el objeto seguido del operador punto (“.”) y el nombre de la propiedad. Dado que los métodos representan operaciones sobre el objeto, la llamada a estos ejecutará algún código internamente en el objeto. Para llamar a los métodos de un objeto utilizamos la sintaxis: Donde argumento1, argumento2 son los valores que el método requiere para poder ejecutar la tarea. Como vemos, la llamada a un método de un objeto es muy similar a las llamadas a procedimientos y funciones, y es que, como veremos a continuación, un método se implementa mediante procedimientos y/o funciones. Esto significa que puede haber métodos, aquellos que se creen mediante una función y devuelvan un resultado al punto de llamada, en cuyo caso se deberá recoger el valor devuelto por el mismo: variable_objeto.metodo(argumento1, argumento2, ..) res = variable_objeto.metodo(argumento1, argumento2, ..)
  • 6. Programación Orientada a Objetos | TELEFÓNICA / / 6 CLASES Losobjetosdisponendemétodos,quesonimplementadosmediante funciones y procedimientos, y de propiedades, que vienen a ser variables donde se almacenan las características de los objetos. El lugar donde se define el código de estos métodos y propiedades es la clase. A través de estos métodos y propiedades, la clase establece el comportamiento de un determinado tipo de objeto A partir de la clase se crean los objetos y sobre ellos se aplican los métodos y propiedades definidos en la misma. La clase es, por tanto, el molde a partir del cual se pueden construir los objetos, que son los elementos que utilizaremos en los programas para poder hacer uso de los métodos y propiedades. clase creación objeto 1 objeto 2 objeto 2 creación creación
  • 7. Programación Orientada a Objetos | TELEFÓNICA / / 7 Cada objeto podrá tener sus propios valores de propiedades, mientras que el comportamiento de los métodos será el mismo en cada objeto. Para definir una clase mediante pseudocódigo, utilizaremos la siguiente sintaxis: Veamos un sencillo ejemplo de creación de una clase Calculadora con la que podemos realizar operaciones básicas con dos números, como Sumar, Restar, Multiplicar y Dividir. Además de cuatro métodos para realizar las citadas operaciones, dispondrá de dos propiedades para almacenar los operandos con los que van a trabajar los métodos de la clase. EstaseríalaimplementaciónenpseudocódigodelaclaseCalculadora: Según se puede apreciar, los cuatro métodos se definen mediante el mismo tipo de funciones que estudiamos durante la programación modular, estas funciones operan con los datos almacenados en las propiedades, que no son más que variables a las que se les añade la palabra property Class NombreClase //definición del contenido de la clase End Class Class Calculadora Property operando1 Integer Property operando2 Integer Function Sumar() Return operando1+operando2 End Function Function Restar() Return operando1-operando2 End Function Function Multiplicar() Return operando1*operando2 End Function Function Dividir() Return operando1/operando2 End Function End Class
  • 8. Programación Orientada a Objetos | TELEFÓNICA / / 8 CREACIÓN DE OBJETOS Laclasedefinelosmétodosypropiedades,peroparapoderhaceruso de los mismos se necesita un objeto sobre el que poder aplicarlos. Para crear un objeto de una clase, utilizaremos un operador llamado New, que es el que se emplea en la mayoría de los lenguajes de programación. La manera de utilizarlo sería la siguiente: Como vemos, a continuación del operador se indica el nombre de la clase de la que queremos crear el objeto, seguido de los paréntesis. Esta instrucción creará un objeto en memoria y lo guardará en la variable indicada a la izquierda del signo igual. Esta variable tendrá que ser declarada con el tipo de la clase. A partir de ahí, ya se puede utilizar la variable objeto para acceder a propiedades y métodos. Para ilustrarlo con un ejemplo, vamos a hacer un programa principal que se encargue de leer dos números y, utilizando un objeto de la clase Calculadora definida anteriormente, muestre los resultados de las cuatro operaciones básicas sobre los números. variable_objeto=New NombreClase() Inicio Datos: Oper Calculadora //define una variable del tipo de la clase, //en ella se guardará el objeto N1, N2 Integer Sum, Res, Multi, Div Integer Código: Leer N1, N2 Oper=New Calculadora() //crea el objeto //asinga valores leídos a las propiedades Oper.operando1=N1 Oper.operando2=N2 //llama a los métodos para realizar los cálculos Sum=Oper.Sumar() Res=Oper.Restar() Multi=Oper.Multiplicar() Div=Oper.Dividir() Mostrar “Suma:”, Sum Mostrar “Resta:”, Res Mostrar “Multiplicación:”, Multi Mostrar “División:”, Div Fin
  • 9. Programación Orientada a Objetos | TELEFÓNICA / / 9 En el ejemplo podríamos haber prescindido de las variables Sum, Res, Multi y Div: Mostrar “Suma:”, Oper.Sumar() Mostrar “Resta:”, Oper.Restar() Mostrar “Multiplicación:”, Oper.Multiplicar() Mostrar “División:”, Oper.Dividir() 1.2 | Constructores Hemos visto en el ejemplo anterior que para poder utilizar los métodos que realizan las operaciones es necesario primero establecer ciertas propiedades del objeto. En muchos casos estas propiedades se establecen nada más crear el objeto, por lo que sería muy cómodo poder hacerlo en la misma instrucción de creación del objeto, en vez de tener que asignar explícitamente cada propiedad. Esto es posible hacer utilizando constructores. Un constructor es un bloque de código que se define dentro de una clase y que se ejecuta en el momento en que se crea un objeto de dicha clase. Por tanto, es el lugar ideal para inicializar propiedades de los objetos. Como vemos, son parecidos a los procedimientos, pero sin la palabra Sub. Además, el nombre del constructor debe ser igual al de la clase. NombreClase(parametro1, parametro2) Los constructores se definen de la siguiente manera:
  • 10. Programación Orientada a Objetos | TELEFÓNICA / / 10 Por ejemplo, si queremos definir la clase Calculadora utilizando constructor, quedaría de la siguiente manera: Y ya no sería necesario asignar explícitamente los valores N1 y N2 a las propiedades Operando1 y Operando2. Una clase puede disponer de más de un constructor, lo que ofrecería la posibilidad de inicializar objetos de distinta forma. Todos los constructores tendrán el mismo nombre, que es el de la clase, pero deberán diferenciarse en el número de parámetros o en el tipo de los mismos. Por ejemplo, podríamos incluir en la clase Calculadora dos constructores, uno para inicializar cada propiedad con un valor y otro que inicializaría las dos propiedades del objeto con el mismo valor: Al hecho de poder definir más de un constructor en una clase se le conoce como sobrecarga de constructores. Oper=New Calculadora(N1, N2) Calculadora(op1 Integer, op2 Integer) operando1=op1 operando2=op2 End Calculadora(op Integer) operando1=op operando2=op End