0% encontró este documento útil (0 votos)
87 vistas14 páginas

Protocolo Colaborativo - Programación Orientada A Objetos

El documento describe los conceptos fundamentales de la programación orientada a objetos, incluyendo clases, objetos y métodos. Una clase representa un conjunto de objetos que comparten atributos y comportamientos, mientras que un objeto es una instancia específica de una clase. Los métodos definen el comportamiento de los objetos al manipular sus atributos y datos a través de instrucciones.

Cargado por

Kevin Pajaro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
87 vistas14 páginas

Protocolo Colaborativo - Programación Orientada A Objetos

El documento describe los conceptos fundamentales de la programación orientada a objetos, incluyendo clases, objetos y métodos. Una clase representa un conjunto de objetos que comparten atributos y comportamientos, mientras que un objeto es una instancia específica de una clase. Los métodos definen el comportamiento de los objetos al manipular sus atributos y datos a través de instrucciones.

Cargado por

Kevin Pajaro
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 14

PROTOCOLO COLABORATIVO UND 2

Clases, objetos y métodos

Integrante:
Kevin Rafael Pájaro Marriaga
Cód. 7501810016

Noviembre 2020

Universidad de Cartagena

Ingeniería de Software
2do Semestre

Programación Orientada a Objetos


INTRODUCCIÓN
En el paradigma de la programación orientado a objetos es importante que al programar
en un lenguaje, las partes con las que se construya el modelo provengan de los objetos
que aparecen en el dominio del problema y estos sean representados en el modelo
computacional a crear; así, el comportamiento de estos objetos, pertenecientes a una
clase, se implementará por medio de métodos, entendiendo como método al conjunto de
instrucciones que realizan una determinada tarea.
Una clase es aquella que representa al conjunto de objetos que comparten una estructura
y un comportamiento común. Se encarga de definir los atributos que componen este tipo
de objetos y los métodos que pueden emplearse para trabajar con estos, por medio de
una serie de reglas e instrucciones las cuales se explicaran más adelante. En cuanto a los
elementos de la clase, tenemos el atributo que ayuda a describir un objeto y puede ser de
tipo primitivo o tipo de dato de referencia; y el método, definido como la abstracción de
una acción, servicio, comportamiento o tarea realizada por un objeto.
El objeto como concepto tiene una definición bastante amplia, entendido como una
representación concreta y especifica de una clase, entidades que tienen un determinado
“estado o “comportamiento”, es decir, que cualquier cosa puede ser un objeto, desde
objetos que representen cosas concretas como cosas abstractas.
En cuanto a los métodos, estos se encargan de definir el comportamiento de los objetos
de una clase, es decir, lo que podemos hacer con los objetos de esa clase y estos nos
permiten cambiar la implementación de una clase sin tener que modificar su interfaz. A su
vez, los métodos poseen unos parámetros, utilizados para especificar los datos de entrada
que requiere el método para realizar su tarea.
OBJETIVO
Conocer los principales conceptos fundamentales del paradigma de la programación
orientada a objetos con el fin de comprender los diferentes métodos al momento de
programar.
JUSTIFICACIÓN
La programación orientada a objetos es un paradigma de la programación que permite el
diseño de aplicaciones orientadas a objetos y surge en la historia como un intento para
dominar la complejidad que posee el software. En la POO, una clase describe un conjunto
de objetos que comparten un comportamiento común, cada clase tiene asociado un
código que determina los atributos de los objetos y los métodos que pueden ejecutar.
Es importante tener en cuenta que la programación orientada a objetos maneja unos
conceptos básicos que se deben conocer previamente a su utilización; es por esta razón,
que surge la necesidad de realizar el presente trabajo, con el objetivo de brindar al
estudiante los conocimientos necesarios acerca de los conceptos relacionados a la
programación orientada a objetos con el fin de facilitar el aprendizaje y la utilización de
este modelo de programación.
CLASES, OBJETOS Y METODOS

Cuando se escribe un programa en un lenguaje de programación orientado a objetos está


creando en su computadora un modelo de alguna parte del mundo real. Las partes con
que se construye el modelo provienen de los objetos que aparecen en el dominio del
problema. Estos objetos deben estar representados en el modelo computacional que se
está creando.
Definimos una clase que describe las características y el comportamiento de un conjunto
de objetos según un modelo definido. Cada clase es un modelo que define un conjunto de
variables (el estado), y métodos apropiados para operar con dichos datos (el
comportamiento). Cada objeto creado a partir de la clase se denomina instancia de la
clase.
El comportamiento de los objetos de una clase se implementa mediante funciones
miembro o métodos. Un método es un conjunto de instrucciones que realizan una
determinada tarea y son similares a las funciones de los lenguajes estructurados. Del
mismo modo que hay variables de instancia y de clase, también hay métodos de instancia
y de clase. En el primer caso, un objeto llama a un método para realizar una determinada
tarea, en el segundo, el método se llama desde la propia clase.

Clases
Una clase representa al conjunto de objetos que comparten una estructura y un
comportamiento común. Una clase es una combinación específica de atributos y métodos
y puede considerarse un tipo de dato de cualquier tipo no primitivo. Así, una clase es una
especie de plantilla o prototipo de objetos: define los atributos que componen ese tipo de
objetos y los métodos que pueden emplearse para trabajar con esos objetos. Aunque, por
otro lado, una clase también puede estar compuesta por métodos estáticos que no
necesitan de objetos. 1

Cada clase tiene asociado un código (definición de la clase), que determina los atributos
que tienen los objetos de la clase y los métodos que pueden ejecutar los objetos de la
clase y cómo lo hacen

Para definir las Clases, existen una serie de reglas y de nuevas instrucciones, pero por lo
demás el lenguaje sigue siendo el de siempre. Para definir una clase en java se utiliza la
palaba reservada “class”. La sintaxis de dicha instrucción requiere además de la
especificación de un nombre para la clase.

1
Tomado de https://www.arkaitzgarro.com/java/capitulo-9.html - capitulo 9 OBJETOS Y CLASES
Opcionalmente, la palabra class puede estar precedida por modificador de acceso public;
si el modificador de la clase es de tipo public debe ser guardada en un archivo .java cuyo
nombre tiene que ser exactamente el mismo que el de la clase.

La declaración de una clase sigue la siguiente sintaxis:

[modificadores] class IdentificadorClase {

// Declaraciones de atributos y métodos

...

Elementos de la clase
Atributo (estado): Un atributo es una propiedad que ayuda a describir un Objeto. Los
Atributos pueden ser dos clases Tipo Primitivo y Tipo de Dato de Referencia.
 Tipo de dato Primitivo: Corresponde a un tipo de dato predefinido por el Lenguaje.
Cuando se define un atributo (o variable) de este tipo, hay que separar un espacio
en memoria para guardar su valor.
Los tipos de datos Primitivos son:

byte short int long


float double boolean char

 Tipo de dato de Referencia: Corresponde a un objeto de una clase (no


obligatoriamente distinta a la definida). En este punto es donde radica gran parte
de la importancia, flexibilidad y reutilización del paradigma de orientación a
objetos; porque cuando se definen atributos cuyo tipo sea una clase, se amplía el
espectro de posibilidades. Cuando se define un atributo de este tipo no se separa
espacio en memoria para un nuevo objeto, sino que se define una referencia que
apuntara a un espacio de memoria con la estructura definida en la clase.

Método (comportamiento): Abstracción de una acción, servicio, comportamiento o tarea


que puede ser realizado por un objeto. Generalmente, un método manipula la
información registrada en los atributos a través de una o más instrucciones.
El tipo de dato que retorna como resultado el método. Este tipo de dato puede corresponder
a un tipo de dato primitivo, a cualquier tipo de dato de referencia, o en caso de no retornar
ningún valor debe especificar el valor void.
Objeto
Un objeto es un concepto, abstracción o cosa con límites bien definidos y con significado
dentro del problema.
Como se puede apreciar la definición de objeto es realmente amplia pues en realidad
cualquier cosa puede ser un objeto. De allí puedan existir objetos que representen cosas
concretas (Automóviles, casa, libros, etc.). Y objetos que representan cosas abstractas
(como pensamientos, ideas etc.).
Aunque el término a veces se emplea de una forma imprecisa, un objeto es una instancia
de una clase predefinida en Java o declarada por el usuario y referenciada por una
variable que almacena su dirección de memoria. Cuando se dice que Java no tiene
punteros simplemente se indica que Java no tiene punteros que el programador pueda
ver, ya que todas las referencias a objeto son de hecho punteros en la representación
interna.2
Una instancia u objeto de una clase es una representación concreta y específica de una
clase y que reside en la memoria del ordenador.
Los objetos son entidades que tienen un determinado “estado”, “comportamiento
(método)” e “identidad”:
 La identidad es una propiedad de un objeto que lo diferencia del resto; dicho con
otras palabras, es su identificador (concepto análogo al de identificador de una
variable o una constante).
 Los métodos (comportamiento) y atributos (estado) están estrechamente
relacionados por la propiedad de conjunto. Esta propiedad destaca que una clase
requiere de métodos para poder tratar los atributos con los que cuenta.
Desde el punto de vista informático, los objetos son tipos abstractos de datos (tipos que
encapsulan datos y funciones que operan sobre esos datos) Algunos ejemplos típicos de
objetos:
 Número racional
Estado (valor actual)
Operaciones (sumar, multiplicar, asignar)
 Vehículo
Estado (velocidad, posición, precio)
Operaciones (acelerar, frenar, parar)
 Conjunto
Estado (elementos).
Operaciones (añadir, quitar, visualizar)
2
Tomado de https://www.arkaitzgarro.com/java/capitulo-9.html - capitulo 9 OBJETOS Y CLASES
 Avión
Estado (fabricante, modelo, matrícula, número de pasajeros)
Operaciones (aterrizar, despegar, navegar)
El primer problema que se nos plantea al analizar un problema que se desea implementar
mediante un programa orientado a objetos es identificar los objetos; es decir, ¿qué cosas
son objetos?; ¿cómo deducimos los objetos dentro del dominio de la definición del
problema?
La identificación de objetos se obtiene examinando la descripción del problema (análisis
gramatical somero del enunciado o descripción) y localizando los nombres o cláusulas
nominales Normalmente, estos nombres y sus sinónimos se suelen escribir en una tabla
de la que luego deduciremos los objetos reales.3

Ejemplo sencillo de clase y de instancia4

El siguiente código muestra la declaración de la clase Precio. La clase Precio consta de un


único atributo (euro) y dos métodos: uno que asigna un valor al atributo (pone) sin
devolver ningún valor y otro que devuelve el valor del atributo ( da).

/**
*  Ejemplo de declaración de la clase Precio
*  double da() --> devuelve el valor almacenado en euros
*  void pone( double x ) --> almacena valor en euros
*/
public class Precio {
// Atributo o variable miembro
public double euros;
// Métodos
public double da() {
return this.euros;
}
public void pone(double x) {
this.euros = x;
}
}

Métodos
3
Programación Orientada a Objetos: Conceptos, Modelado, Diseño y Codificación en C++, Autor: Luis
Joyanes Aguilar.
4
Ejemplo tomado de la página web https://www.arkaitzgarro.com/java/capitulo-9.html
Los métodos (operaciones o servicios) definen el comportamiento de los objetos de una
clase dada (lo que podemos hacer con los objetos de esa clase). Los métodos nos
permiten cambiar la implementación de una clase sin tener que modificar su interfaz (esto
es, sin tener que modificar el código que utiliza objetos de la clase cuya implementación
cambiamos), un ejemplo de métodos es utilizar un algoritmo más eficiente para resolver
un problema concreto sin tener que tocar el código del resto del programa.

Cada método tiene un nombre y un cuerpo que realiza la acción o comportamiento


asociado con el nombre del método En un LOO, el cuerpo de un método consta de un
bloque de código procedimental que ejecuta la acción requerida Todos los métodos que
alteran o acceden a los datos de un objeto se definen dentro del objeto Un objeto puede
modificar directamente o acceder a los datos de otros objetos.

La estructura de un método se divide en:

 Cabecera (determina su interfaz)


Modificadores tipo nombre (parámetros)
 Cuerpo (define su implementación)
{
// Declaraciones de variables
...
// Sentencias ejecutables
...
// Devolución de un valor (opcional)
...
}

En el cuerpo del método se implementa el algoritmo necesario para realizar la tarea de la


que el método es responsable. El cuerpo de un método se puede interpretar como una
caja negra que contiene su implementación:

 El método oculta los detalles de implementación.


 Cuando utilizamos un método, sólo nos interesa su interfaz.

Un método dentro de un objeto se activa por un mensaje que se envía por otro objeto al
objeto que contiene el método De modo alternativo, se puede llamar por otro método en
el mismo objeto por un mensaje local enviado de un método a otro dentro del objeto.
Lenguajes como Java permiten que existan distintos métodos con el mismo nombre
siempre y cuando su signatura no sea idéntica (algo que se conoce con el nombre de
sobrecarga).
Ejemplo:

System.out.prinln (…);
- System.out.println ()
- System.out.println (boolean)
- System.out.println (char)
- System.out.println (char[])
- System.out.println (double)
- System.out.println (float)
- System.out.println (int)
- System.out.println (long)
- System.out.println (Object)
- System.out.println (String)

No es válido definir dos métodos con el mismo nombre que difieran únicamente por el
tipo del valor que devuelven. De todas formas, no conviene abusar demasiado de esta
prestación del lenguaje, porque resulta propensa a errores (en ocasiones, creeremos estar
llamando a una “versión” de un método cuando la que se ejecuta en realidad es otra).

Un método puede tener parámetros:

 A través de los parámetros se especifican los datos de entrada que requiere el


método para realizar su tarea.
 Los parámetros definidos en la cabecera del método se denominan parámetros
formales.
 Para cada parámetro, hemos de especificar tanto su tipo como un identificador
que nos permita acceder a su valor actual en la implementación del método.
 Cuando un método tiene varios parámetros, los distintos parámetros se separan
por comas en la cabecera del método.

En la definición de un método, la lista de parámetros formales de un método establece:

 Cuántos parámetros tiene el método


 El tipo de los valores que se usarán como parámetros
 El orden en el que han de especificarse los parámetros

Ejemplo: Intercambio incorrecto de valores

public void swap (int a, int b) // Definición


{
int aux;
aux = b; a = b; b = aux;
}
...
swap(a,b); // Invocación

RESUMEN

En la programación orientada a objeto una clase describe a un conjunto de objetos que


comparten una estructura y un comportamiento común. Cada clase tiene asociado un
código (definición de la clase), que determina los atributos que tienen los objetos de la
clase y los métodos que pueden ejecutar los objetos de la clase y cómo lo hacen; por otra
parte, un objeto es una instancia de una clase predefinida en Java o declarada por el
usuario y referenciada por una variable que almacena su dirección de memoria. Cuando se
dice que Java no tiene punteros simplemente se indica que Java no tiene punteros que el
programador pueda ver, ya que todas las referencias a objeto son de hecho punteros en la
representación interna. A su vez, Los métodos (operaciones o servicios) definen el
comportamiento de los objetos de una clase dada. Los métodos nos permiten cambiar la
implementación de una clase sin tener que modificar su interfaz. Cada método tiene un
nombre y un cuerpo que realiza la acción o comportamiento asociado con el nombre del
método En un LOO, el cuerpo de un método consta de un bloque de código procedimental
que ejecuta la acción requerida Todos los métodos que alteran o acceden a los datos de
un objeto se definen dentro del objeto Un objeto puede modificar directamente o acceder
a los datos de otros objetos.

Resumen de conceptos

Objeto: Los objetos Java modelan los objetos del dominio de un problema.

Clase: Los objetos se crean a partir de las clases. La clase describe la categoría del objeto;
los objetos representan instancias individuales de la clase.

Método: Podemos comunicarnos con los objetos invocando sus métodos. Generalmente,
los objetos hacen algo cuando invocamos un método.

Parámetro: Los métodos pueden tener parámetros para aportar información adicional
para realizar una tarea.

Signatura: El encabezado de un método se denomina su signatura. Proporciona la


información necesaria para invocar dicho método.

Tipo: Los parámetros tienen tipos. El tipo define la clase de valor que un parámetro puede
tomar.

Identidad: Es una propiedad de un objeto que lo diferencia del resto.

Atributo: Son una propiedad o característica que se puede asignar a un objeto (elemento).

Instancia: Una instancia es un elemento tangible (ocupa memoria durante la ejecución del
programa) generado a partir de una definición de clase.
CONCLUSIÓN

En este trabajo exploramos más de cerca los conceptos básicos del paradigma orientado a
objetos, la cual busca crear una mejor forma de dominar la complejidad del software,
enfocándonos principalmente en la definición de conceptos propios de la programación
orientada a objetos, definiendo más a fondo los conceptos de clase, objetos y métodos.
De esta manera, este trabajo logro brindarle al estudiante un conocimiento más amplio
sobre la POO, permitiendo un mejor entendimiento del tema y de su manejo para en un
futuro poner sus conocimientos en práctica de una manera menos compleja.
BIBLIOGRAFÍA

 aprendiendoarduino.wordpress.com - Clases y objetos

 D.J. Barnes y M. Kölling, Programación orientada a objetos con Java.


Una introducción práctica usando BlueJ. Pearson Educación, 2007

 Fundamentos de la Programación Orientada a Objetos


Objetos y Clases

 https://www.arkaitzgarro.com/java/capitulo-9.html

 http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/clases.htm

 Programación Orientada a Objetos: Conceptos, Modelado, Diseño y Codificación


en C++, Autor: Luis Joyanes Aguilar.

También podría gustarte