Nombre de la materia
Programación orientada a objetos
Nombre del alumno
John Sebastián Montalvo Encalada
Matrícula
290390353
Nombre de la Tarea
Clase Sombrero
Unidad #
3
Nombre del Profesor
Juan Carlos León Chorreño
Fecha
16/09/2022
Unidad #: 3
Programación Orientada a Objetos
ACTIVIDAD 3
CLASE SOMBRERO
“Las variables que hacen referencia a objetos locales y sus valores se guardan en la memoria de pila,
mientras que los objetos a los que señalan se almacenan en el espacio de memoria dinámica (heap)”
Sun Microsystems
Objetivos:
Practicar el análisis, diseño y desarrollo, utilizando la Programación Orientada Objetos,
mediante un ejercicio donde se utilizarán los conocimientos adquiridos hasta la unidad 3
Instrucciones:
Revisa los materiales correspondientes a los recursos de la semana 3, así como las Open Class previas y
de la semana actual que hayan impartido los profesores de la materia.
Forma de evaluación:
Criterio Ponderación
Presentación. 10%
Ocupando el formato de trabajos propuesto por
la Universidad, desarrolla un documento claro y
bien redactado, cuidando la ortografía y
presentando correctamente cada sección:
Introducción, Desarrollo, Conclusiones y
Bibliografía.
Evidencia del código. 50%
Se envía el código del programa en Java, a
través de un archivo o proyecto comprimido y
este se ejecuta correctamente, es decir, se
cumplen el 100% de los requerimientos
Unidad #: 3
Programación Orientada a Objetos
solicitados en la problemática a resolver y con
las salidas solicitadas. Incluye en el código
nombre, matrícula, fecha y comentarios de los
procesos más importantes.
Evidencia en documento. 40%
Se incluye una introducción a la actividad
redactada por el estudiante, la cual debe definir
el marco teórico dentro del cual se desarrolla la
actividad.
En el Desarrollo de la actividad enviada,
contiene capturas de pantallas del código en
Java y de la ejecución del mismo, tanto en
corridas exitosas y no exitosas al 100% de la
problemática planteada en este documento. Se
observan bien la fecha y hora en esas
imágenes. Se explica claramente la manera de
realizar la actividad y de cómo se resolvieron
los inconvenientes encontrados.
Las conclusiones son redactadas por el
estudiante y reflejan de forma contundente que
el estudiante obtuvo un aprendizaje significativo
con esta actividad.
La bibliografía presentada es congruente con las
citas que se incluyen en el documento y es
presentada en formato APA y en orden
alfabético.
Desarrollo de la actividad:
A. Resolución de las preguntas y del programa planteados en la problemática, utilizando el paradigma
Orientado a Objetos y realizado en el IDE de programación de tu preferencia, puede ser Eclipse,
Apache NetBeans, BlueJ, Intellij IDEA, etcétera.
B. Deberás enviar el proyecto comprimido .zip, .rar o .7z.
Unidad #: 3
Programación Orientada a Objetos
C. Debes enviar además en un documento de Word todas las pantallas del código donde comentes
cada uno de los procesos más importantes del programa y además debes incluir a manera de
comentarios de documentación: tu nombre, matrícula y fecha de realización del programa. El
documento de Word debe incluir también pantallas de ejecución del programa, donde se pueda
corroborar la fecha y hora de la ejecución. En caso de contar con un IDE de programación que no
arroje la fecha y hora al momento de la corrida, entonces se debe de notar la fecha y hora de tu
computadora, por ejemplo:
Es importante destacar que no solo se deben incluir pantallas de las ejecuciones exitosas, sino
también de aquellas donde el programa no funcionó correctamente y en el Desarrollo de la
actividad debes comentar cómo hiciste para corregirlas.
D. El documento debe incluir Introducción, Desarrollo, Conclusiones y Bibliografía en formato APA . La
introducción de tu trabajo deberá contener mínimo media cuartilla, donde se explique la
importancia de la programación orientada a objetos, la creación de objetos, la definición del
diagrama de objetos elaborado en UML, la importancia de los atributos y métodos.
Elaborar por lo menos media página de conclusión donde se expresen, los beneficios de la
programación orientada a objetos, la experiencia de desarrollar la clase sombrero y lo que se
puede recomendar para identificar cada uno de los elementos de la programación orientada a
objetos. Considera que esta actividad se evalúa con una ponderación del 15% de calificación.
Recuerda que todo debe ser redactado por ti, no se debe copiar y pegar de ningún sitio de Internet.
Unidad #: 3
Programación Orientada a Objetos
Problemática a resolver
CLASE SOMBRERO
I.- INSTRUCCIONES. De acuerdo a la clase
sombrero, identifique cuá les son los atributos y
cuá les son los métodos de los que se encuentran
en el recuadro de la figura 3.1. y con esa
informació n complete el diagrama UML que es un
diagrama de clase que se presenta en la figura 3.2.
Es importante que coloques el tipo de dato de los
atributos y tipo de dato de retorno de los
métodos que tú consideres, así como el
modificador de visibilidad de ambos.
Recuadro de atributos y métodos.
color, Quitar(), talla, Poner(); Limpiar(); modelo;
idSombrero; Colgar()
Figura 3.1 Recuadro de atributos y métodos
Diagrama UML de la clase sombrero
+ Sombrero
.
Unidad #: 3
Programación Orientada a Objetos
Figura 3.2 Diagrama UML de la clase sombrero .
Introducción:
Un lenguaje basado en objetos nos da la posibilidad de definir objetos y realizar operaciones sobre ellos. Un
objeto es la instancia de una clase.
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.
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.
Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se
utilizan para representar entidades o conceptos. 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.
II.- INSTRUCCIONES. Subraya en cuál de las siguientes líneas se
está creando un objeto de la clase Sombrero
1 public static void main (String args[ ])
2 public class Sombrero( ){
3 Sombrero miSombrero = new Sombrero( );
III.- INSTRUCCIONES. Indique cuál de las siguientes líneas de código indica “la llamada a un método” de la
clase sombrero
1 [Link]=”blanco”;
2 [Link]();
3 [Link]=’L’;
Unidad #: 3
Programación Orientada a Objetos
IV.- INSTRUCCIONES. Desarrolla el programa en Java de la clase “Sombrero” y que corresponda al
diagrama UML de las INSTRUCCIONES I, (figura 3.2) correspondiente al diagrama de clase Sombrero.
E. Debes de definir los atributos y crear los métodos correspondientes a la clase sombrero.
F. Crea al menos tres objetos sombreros con diferencias en sus atruibutos y ejecuta los métodos de la
clase sombrero para cada uno.
Ejemplo de salida del programa de un objeto de la clase Sombrero, recuerda que debes crear al menos tres
objetos distintos:
ID del Sombrero: 2235
Modelo: Texano
Talla: 6
Color: Negro
El sombrero ha sido descolgado
El sombrero está puesto en la cabeza de su dueño
El sombrero ha sido quitado de la cabeza de su dueño
El sombrero ha sido limpiado
El sombrero ha sido colgado
Recuerda que toda fuente de información utilizada como consulta para el desarrollo de la actividad, debe estar
correctamente citada a lo largo de tu documento y registrada en la bibliografía.
Código:
Clase Sombrero
public class Sombrero {
private int idSombrero;
private String color;
private String talla;
private String modelo;
public Sombrero() {
}
public Sombrero(int idSombrero, String color, String talla, String modelo) {
[Link] = idSombrero;
[Link] = color;
[Link] = talla;
[Link] = modelo;
}
public int getIdSombrero() {
return idSombrero;
}
Unidad #: 3
Programación Orientada a Objetos
public void setIdSombrero(int idSombrero) {
[Link] = idSombrero;
}
public String getColor() {
return color;
}
public void setColor(String color) {
[Link] = color;
}
public String getTalla() {
return talla;
}
public void setTalla(String talla) {
[Link] = talla;
}
public String getModelo() {
return modelo;
}
public void setModelo(String modelo) {
[Link] = modelo;
}
public String Poner(){
String ans="Se ha puesto el sombrero \n";
return ans;
}
public String Quitar(){
String ans="Se ha quitado el sombrero \n";
return ans;
}
public String Limpiar(){
String ans="Se ha limpiado el sombrero \n";
return ans;
}
public String Colgar(){
String ans="Se ha colgado el sombrero \n";
return ans;
}
}
Clase Main
import [Link];
import [Link];
public class Main extends Sombrero{
public static void main(String[] args) {
Unidad #: 3
Programación Orientada a Objetos
Scanner entrada = new Scanner([Link]);
Sombrero s1= new Sombrero(2236,"Azul Marino","Extra Grande","Vaquero");
Sombrero s2= new Sombrero(2237,"Negro","Pequeño","Boina");
Sombrero s3= new Sombrero(2202,"Gris","Grande","Fedora");
Sombrero s4= new Sombrero(2203,"Verde Oliva","Mediano","Bristol");
[Link]([Link]()+" "+[Link]()+" "+[Link]()
+" "+[Link]()+"\n"+[Link]()+" "+[Link]()+" "+[Link]()+" "+[Link]()
+"\n");
[Link]([Link]()+" "+[Link]()+" "+[Link]()
+" "+[Link]()+"\n"+[Link]()+" "+[Link]()+" "+[Link]()+" "+[Link]()
+"\n");
[Link]([Link]()+" "+[Link]()+" "+[Link]()
+" "+[Link]()+"\n"+[Link]()+" "+[Link]()+" "+[Link]()+" "+[Link]()
+"\n");
[Link]([Link]()+" "+[Link]()+" "+[Link]()
+" "+[Link]()+"\n"+[Link]()+" "+[Link]()+" "+[Link]()+" "+[Link]()
+"\n");
}
}
Capturas de pantalla:
Conclusiones:
Unidad #: 3
Programación Orientada a Objetos
Las clases son un pilar fundamental de la programación orientada a objetos. Permiten abstraer los datos y sus
operaciones asociadas al modo de una caja negra.
Las clases y los objetos son los conceptos más importantes de la Programación Orientada por Objetos (POO),
y están fuertemente relacionados; los objetos se crean a partir de clases, y las clases sirven como plantillas
para crear objetos.
Bibliografía:
[Link]
%C3%B3n%20Orientada%20a%[Link] (Nereu, 2014).
[Link]
%20Programaci%C3%B3n%20Orientada%20a%20Objetos%20(cppCourse%2C%202013). (cppCourse,
2013)
[Link]