Está en la página 1de 6

Programación Orientada a Objetos

MATERIA: PROGRAMACIÓN ORIENTADA A OBJETOS


SEMANA 2

TEMAS SEMANA 2:
a) Objetos y clases.
b) Fundamentos de Programación.
c) Tipos de datos.
d) Métodos.

• ¿Qué diferencia hay entre declaración de referencias a objetos,


instanciación de objetos e inicialización de referencias a objetos?
Los tres procesos son necesarios para la creación de un objeto y que este se
pueda utilizar en un programa. Las variables de referencia a objetos son
aquellas que contienen la dirección de un objeto en la memoria. Son como las
cartas del correo postal que se dirigen cada una a diferentes casas, gracias
precisamente a ese domicilio o dirección que va escrita en cada sobre.

En Java para establecer esa dirección de la variable en la memoria, se debe


declarar, instanciar e inicializar un objeto de la clase. Veamos el siguiente
programa:
Programación Orientada a Objetos

En la línea 4 podemos observar que se realizan los tres procesos:


1.-) Se declara la referencia al objeto escribiendo el nombre de la clase y el
identificador, en este caso fue: Pantalon miPantalon, donde Pantalon es el
nombre de la clase y miPantalon el identificador.
2.-) Se instancia (crea) el objeto utilizando la palabra new y posteriormente el
nombre de la clase. En este caso fue: new Pantalon(). El objeto creado es de la
clase Pantalon.
3.-) El signo “=” inicializa la variable de referencia asignándole el objeto recién
creado.
También se puede realizar este proceso en dos líneas de código y el ejemplo
anterior se realizaría de la siguiente manera:
Pantalon miPantalon;
miPantalon = new Pantalon();
Posteriormente ya se puede utilizar esa variable de referencia u objeto
(miPantalon), mandando llamar a un método como ocurre en la línea 5.

• ¿Qué programa puedo hacer que sea sencillo y que pueda utilizar
el paradigma orientado a objetos?
Por lo general cuando se aprende programación, se realiza ese código llamado
“Hola mundo”, sin embargo, es básicamente para imprimir en pantalla ese
mensaje. Te invito a realizar un programa distinto. Revisa el siguiente código
para que lo transcribas a un IDE de programación en Java y lo ejecutes. A
manera de comentarios en el programa, encontrarás información para que te
quede más claro el mismo.
Programación Orientada a Objetos

Salida del programa:


Programación Orientada a Objetos

En el tipo de dato String ¿A qué se refiere la inmutabilidad y en qué


espacios de memoria se alojan?
La inmutabilidad de las cadenas se refiere a la característica de que un objeto
de tipo cadena una vez creado no puede modificarse, resultando que cualquier
intento de modificación de la cadena, generará un nuevo objeto del mismo
tipo.
Las cadenas pueden utilizar dos tipos de memoria, el primero es el Java Heap,
espacio de memoria donde viven todos los objetos que son creados a través de
la palabra reserva new, por otro lado las cadenas cuentan con un espacio
dedicado conocido como Pool de Strings.

Considerando el principio de inmutabilidad de las


cadenas, en Java, podría pensarse que se estarían
generando muchas cadenas en cualquier programa
hecho en este lenguaje, lo que podría concluir que el
consumo de memoria se incrementará ya que pueden
existir muchas cadenas iguales.

Pool de Strings
Para reducir el problema de la memoria, de forma interna, Java implementa un
pool de Strings que es compartido. De tal forma que cada vez que se necesite
crear una nueva cadena, la JVM revisa si ya existe en el Pool, y de ser así se
regresará una referencia a dicha cadena.
Programación Orientada a Objetos

Cuando una cadena es creada como un objeto, esta existirá dentro del Java
Heap, pero cuando es inicializada como una literal, esta será alojada en
el Pool de Strings, como se puede ver en el ejemplo siguiente.

Como se puede observar las cadenas cad1 y cad2 fueron inicializadas como
literales de cadena, lo que permite a la JVM marcarlas con el mismo ID=20,
mientras que cad3 y cad4 respectivamente tienen el ID=27 e ID=28,
identificando objetos diferentes, concepto que es confirmado al imprimir las
comparaciones en la consola.
Programación Orientada a Objetos

• ¿Qué elementos comprende la firma de un método?

Dentro de la declaración de la firma de un método, existen varios elementos,


pero los únicos que son requeridos son aquellos que representan el tipo de
retorno de dato, su nombre, un par de paréntesis (que sirven para recibir
parámetros opcionales) y el contexto o cuerpo del método delimitado por
corchetes {}

En general los métodos pueden contener los siguientes componentes en el


órden en que son definidos,
1. Modificador de acceso (public, private, protected, o el predeterminado si no
se define alguno).
2. El tipo de retorno de dato, o void si es que no se regresa ningún valor.
3. El nombre del método, respetando la convención por nomenclatura.
4. Una lista de parámetros separados por coma dentro de los paréntesis,
aunque la lista es opcional, los paréntesis siempre deberán colocarse.
5. Una lista de excepciones que puede declarar el método, que es opcional.
6. El contexto o cuerpo del método, delimitado por corchetes {}

Para fines de documentación la firma del método está comprendida


básicamente por su nombre y los tipos de datos de los parámetros. Por
ejemplo, en la firma del método arriba descrito sería:
calcularVolumen(double, int, int)
Reglas de nomenclatura para métodos
Para nombrar un método, se puede considerar un identificador válido siguiendo
los convenios de nomenclatura, por ejemplo los nombres de método deben ser
un verbo en minúsculas, o si es un nombre compuesto, éste deberá comenzar
con un verbo en minúsculas, seguido de adjetivos, o sustantivos con la primera
letra de cada palabra en mayúsculas, por ejemplo:
⚫ calcular
⚫ ejecutarProceso
⚫ obtenerAcceso
⚫ verCalificacionesFinales
⚫ esValido

También podría gustarte