SlideShare uma empresa Scribd logo
1 de 42
Clases y Objetos Pequeño Repaso
Clase ,[object Object]
Define los atributos y métodos con los que contarán todos los objetos de esta clase.
Pensemos en la clase pelota. Qué es una pelota? Una pelota es un objeto circular que tiene color y que dependiendo del material en que se elabore puede rebotar o no
Clase: Pelota ,[object Object]
Material: plástico, tela, cuero ,[object Object]
Pelota(color)
dePlastico()
deTela()
deCuero()
Atributos Clase Pelota ,[object Object]
String[] materialesPermitidos = {“plastico”,”tela”,”cuero”};//define un arreglo
Arreglo materialesPermitidos materialesPermitidos 0 1 2 plastico tela cuero Índice del arreglo Para acceder al contenido del arreglo se utiliza la sintaxis:  nombreArreglo[indice] Por ejemplo para recuperar el valor plástico: materialesPermitidos[0]
Métodos Clase Pelota ,[object Object]
Pelota(color): constructor –  sobrecargado  – que recibe un parámetro, correspondiente al color de la pelota que se está creando (instanciando)
dePlastico(): método que define material = plastico
deTela(): método que define material = tela
deCuero(): método que define material = cuero
Clase Pelota (Pelota.java) class Pelota{ String color; String material; //Arreglo de Strings que define los materiales permitidos String[] materialesPermitidos = {"plastico","tela","cuero"}; /* * Constructor */ Pelota(){ color = "Blanco";//por defecto las pelotas se crean Blancas material = materialesPermitidos[0];//por defecto se crean de plastico } /* * Constructor sobrecargado: permite definir el color * deseado al momento de la construcción de la pelota */ Pelota(String colorDeseado){ color = colorDeseado;//por defecto las pelotas se crean Blancas material = materialesPermitidos[0];//por defectos se crean de plastico } /* * modifica el material de una pelota conviertiendolo en plastico */ void dePlastico(){ material = materialesPermitidos[0]; } /* * modifica el material de una pelota conviertiendolo en tela */ void deTela(){ material = materialesPermitidos[1]; } /* * modifica el material de una pelota conviertiendolo en cuero */ void deCuero(){ material = materialesPermitidos[2]; } }
Clase Fabrica ,[object Object]
Clase Fábrica (Fabrica.java) /* * Clase Fabrica: * hara uso de la clase Pelota * para fabricar las pelotas */ class Fabrica{ public static void main(String[] args){ //fabricacion de una pelota blanca de plastico Pelota producto1 = new Pelota(); //fabricacion de una pelota amarilla de plastico Pelota producto2 = new Pelota("Amarillo"); //modificacion de la primera pelota para que sea de cuero producto1.deCuero(); //modificacion de la segunda pelota para que sea de tela producto2.deTela(); //notificacion al usuario final System.out.println("Se han fabricado - instanciado - dos pelotas diferentes"); } }
Revisando las Pelotas instanciadas ,[object Object]
Asimismo en la clase Fábrica debemos hacer uso del nuevo método definido para imprimir las características de cada producto
Método mostrarCaracteristicas (Pelota.java) /* * permite visualizar el material y el color de * una pelota */ String[]  mostrarCaracteristicas(){ String[] caracteristicas;//se define un arreglo caracteristicas = new String[2];//el arreglo tendra dos posiciones caracteristicas[0] = color;//en la posicion 0 tendra el color caracteristicas[1] = material;//en la posicion 1 tendra el material return caracteristicas; }
Consultando los productos (Fabrica.java) //detalle de las pelotas fabricadas System.out.println("Pelota 1"); System.out.println("Color: "+producto1. mostrarCaracteristicas()[0] ); System.out.println("Material: "+producto1. mostrarCaracteristicas()[1] ); System.out.println("Pelota 2"); System.out.println("Color: "+producto2.mostrarCaracteristicas()[0]); System.out.println("Material: "+producto2.mostrarCaracteristicas()[1]);
Aplicación Curso Clases Kiosko y Departamento
Clase Departamento ,[object Object]
Departamento.java class Departamento{ String nombre; //constructor Departamento(){ nombre = "Sin Nombre"; } /* * constructor sobrecargado: * esta nueva version del constructor permitira * fijar el nombre de un departamento tan pronto * como se crea */ Departamento(String auxNombre){ nombre = auxNombre; } /* * este metodo permite cambiar el nombre * de un departamento previamente creado * se habla de cambiar en lugar de definir * pues en el peor de los casos un departamento * se llama Sin Nombre - que ya es en si un nombre - */ void cambiarNombre(String nuevoNombre){ nombre = nuevoNombre; } /* * este metodo permite recuperar el nombre * de un departamento creado previamente */ String recuperarNombre(){ return nombre; } }
Clase Kiosko ,[object Object]
Dentro de este método serán creados 5 Departamentos diferentes con los siguientes nombres: Hogar, Belleza, Entretenimiento, Libros, Jardín
El método presentará la información al usuario dándole la bienvenida al almacen por Departamentos
Kiosko.java class Kiosko{ /* * Este metodo sera el punto de entrada de la * aplicacion */ public static void main(String[] args){ /* * arreglo de Strings con los nombres de los * departamentos */ String[] nombresDepartamentos = {"Hogar","Belleza","Entretenimiento", "Libros","Jardin"};//1 statement puede escribirse en varias lineas // String auxiliar de bienvenida al usuario String saludo = "Bienvenido a Nuestra Tienda de Departamentos"; // variable tipo int auxiliar para el listado int aux = 0; /* * creacion de los 5 Departamentos usando el constructor * sobrecargado */ Departamento depto1 = new Departamento(nombresDepartamentos[0]); Departamento depto2 = new Departamento(nombresDepartamentos[1]); Departamento depto3 = new Departamento(nombresDepartamentos[2]); Departamento depto4 = new Departamento(nombresDepartamentos[3]); Departamento depto5 = new Departamento(nombresDepartamentos[4]); /* * Mensaje de bienvenida al usuario, indicacion del numero de * departamentos existentes y listado de los mismos */ System.out.println(saludo); System.out.println("Contamos con los siguientes (" +nombresDepartamentos.length+") Departamentos:"); System.out.println(++aux+" - "+depto1.recuperarNombre()); System.out.println(++aux+" - "+depto2.recuperarNombre()); System.out.println(++aux+" - "+depto3.recuperarNombre()); System.out.println(++aux+" - "+depto4.recuperarNombre()); System.out.println(++aux+" - "+depto5.recuperarNombre()); } }
Control de Flujo Definiendo el curso a seguir dentro de la aplicación
If ,[object Object]
Simple1.java - Ejemplo class Simple1{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if( args.length == 0 ){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple1"); } System.out.println("Fin de la primera prueba"); } }
Simple1.java - Ejemplo ,[object Object],java Simple1 Usted no paso ningun paramentro a la aplicacion Simple1 Fin de la primera prueba ,[object Object],java Simple1  param1 Fin de la primera prueba parámetro
Simple1.java - Explicación ,[object Object]
length es un atributo de los arreglos que se utiliza para determinar su tamaño
If - Else ,[object Object]
Simple2.java class Simple2{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if(args.length == 0){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple2"); }else{ System.out.println("Usted paso "+args.length+" parametro(s) a la aplicacion Simple2"); } System.out.println("Fin de la segunda prueba"); } } true false
If anidados ,[object Object]
Simple3.java class Simple3{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if(args.length == 0){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple3"); }else{ if(args.length > 1){ System.out.println("Usted paso mas de 1 parametro a la aplicacion Simple3"); }else{ System.out.println("Usted paso exactamente 1 parametro a la aplicacion Simple3"); } } System.out.println("Fin de la segunda prueba"); } }

Mais conteúdo relacionado

Semelhante a ClasesObjetosRepaso

Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeansedgar muñoz
 
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01cursobeta
 
Programación en c++
Programación en c++Programación en c++
Programación en c++andermijan
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfTareasEMI
 
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)Videoconferencias UTPL
 
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetosluis freddy
 
Exposicion Capitulo 10,11,12
Exposicion Capitulo 10,11,12Exposicion Capitulo 10,11,12
Exposicion Capitulo 10,11,12jack_corvil
 
Metodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMetodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMANUEL RAMIREZ
 
Biblioteca java.util por gio
Biblioteca java.util por gioBiblioteca java.util por gio
Biblioteca java.util por gioRobert Wolf
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLjubacalo
 

Semelhante a ClasesObjetosRepaso (20)

MéTodos En Java
MéTodos En JavaMéTodos En Java
MéTodos En Java
 
Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeans
 
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
 
Programación en c++
Programación en c++Programación en c++
Programación en c++
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
UTPL-PROGRAMACIÓN AVANZADA-II-BIMESTRE-(OCTUBRE 2011-FEBRERO 2012)
 
Curso de Macros Excel
Curso de Macros ExcelCurso de Macros Excel
Curso de Macros Excel
 
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos3 desarollo manejo datos capitulo 3 -01 arreglo objetos
3 desarollo manejo datos capitulo 3 -01 arreglo objetos
 
Exposicion Capitulo 10,11,12
Exposicion Capitulo 10,11,12Exposicion Capitulo 10,11,12
Exposicion Capitulo 10,11,12
 
Metodo constructor de una clase JAVA
Metodo constructor de una clase JAVAMetodo constructor de una clase JAVA
Metodo constructor de una clase JAVA
 
Practica 1 html_basico
Practica 1 html_basicoPractica 1 html_basico
Practica 1 html_basico
 
Biblioteca java.util por gio
Biblioteca java.util por gioBiblioteca java.util por gio
Biblioteca java.util por gio
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
C++
C++C++
C++
 
Programación en c++
Programación en c++Programación en c++
Programación en c++
 
Cplus
CplusCplus
Cplus
 
Servlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTMLServlets que manejan datos de formularios HTML
Servlets que manejan datos de formularios HTML
 
Sudoku
SudokuSudoku
Sudoku
 
Taller 1 5
Taller 1 5Taller 1 5
Taller 1 5
 
Taller 1 5
Taller 1 5Taller 1 5
Taller 1 5
 

Mais de Jose Martinez

Bienvenida a-la-segunda-parte-del-eje-3
Bienvenida a-la-segunda-parte-del-eje-3Bienvenida a-la-segunda-parte-del-eje-3
Bienvenida a-la-segunda-parte-del-eje-3Jose Martinez
 
Introducción a los StoryBoard
Introducción a los StoryBoardIntroducción a los StoryBoard
Introducción a los StoryBoardJose Martinez
 
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXI
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXIHacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXI
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXIJose Martinez
 
Presentación Inicial Proyecto Grupo 13
Presentación Inicial Proyecto Grupo 13Presentación Inicial Proyecto Grupo 13
Presentación Inicial Proyecto Grupo 13Jose Martinez
 
¿Por qué Relacional?
¿Por qué Relacional?¿Por qué Relacional?
¿Por qué Relacional?Jose Martinez
 
Hoy para mi: Educación es
Hoy para mi: Educación esHoy para mi: Educación es
Hoy para mi: Educación esJose Martinez
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence APIJose Martinez
 
My Story With Flickr
My Story With FlickrMy Story With Flickr
My Story With FlickrJose Martinez
 

Mais de Jose Martinez (9)

Bienvenida a-la-segunda-parte-del-eje-3
Bienvenida a-la-segunda-parte-del-eje-3Bienvenida a-la-segunda-parte-del-eje-3
Bienvenida a-la-segunda-parte-del-eje-3
 
Introducción a los StoryBoard
Introducción a los StoryBoardIntroducción a los StoryBoard
Introducción a los StoryBoard
 
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXI
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXIHacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXI
Hacia un aprendizaje más abierto: Prácticas y Recursos del siglo XXI
 
Presentación Inicial Proyecto Grupo 13
Presentación Inicial Proyecto Grupo 13Presentación Inicial Proyecto Grupo 13
Presentación Inicial Proyecto Grupo 13
 
¿Por qué Relacional?
¿Por qué Relacional?¿Por qué Relacional?
¿Por qué Relacional?
 
#noquieroestaraca
#noquieroestaraca#noquieroestaraca
#noquieroestaraca
 
Hoy para mi: Educación es
Hoy para mi: Educación esHoy para mi: Educación es
Hoy para mi: Educación es
 
Introducción a Java Persistence API
Introducción a Java Persistence APIIntroducción a Java Persistence API
Introducción a Java Persistence API
 
My Story With Flickr
My Story With FlickrMy Story With Flickr
My Story With Flickr
 

Último

PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalRosarioChoque3
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.monthuerta17
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).hebegris04
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...DavidBautistaFlores1
 
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docx
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docxEJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docx
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docxFabianValenciaJabo
 
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...Carol Andrea Eraso Guerrero
 
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfBITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfsolidalilaalvaradoro
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJOLeninCariMogrovejo
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfssuser50d1252
 
Amor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAmor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAlejandrino Halire Ccahuana
 
Acuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfAcuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfmiriamguevara21
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxRosabel UA
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docxMagalyDacostaPea
 
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfPROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfMaritza438836
 
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2Eliseo Delgado
 

Último (20)

PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbalPPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
PPT_ Prefijo homo tema para trabajar los prefijos en razonamiento verbal
 
Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.Si cuidamos el mundo, tendremos un mundo mejor.
Si cuidamos el mundo, tendremos un mundo mejor.
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx¿Amor o egoísmo? Esa es la cuestión.pptx
¿Amor o egoísmo? Esa es la cuestión.pptx
 
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
HISTORIETA: AVENTURAS VERDES (ECOLOGÍA).
 
describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...describimos como son afectados las regiones naturales del peru por la ola de ...
describimos como son afectados las regiones naturales del peru por la ola de ...
 
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docx
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docxEJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docx
EJEMPLO MODELO DE PLAN DE REFUERZO ESCOLAR.docx
 
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...
Desarrollo de habilidades del siglo XXI - Práctica Educativa en una Unidad-Ca...
 
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdfBITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
BITÁCORA DE ESTUDIO DE PROBLEMÁTICA. TUTORÍA V. PDF 2 UNIDAD.pdf
 
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJODIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
DIDÁCTICA DE LA EDUCACIÓN SUPERIOR- DR LENIN CARI MOGROVEJO
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdfFichas de Matemática TERCERO DE SECUNDARIA.pdf
Fichas de Matemática TERCERO DE SECUNDARIA.pdf
 
Amor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdfAmor o egoísmo, esa es la cuestión por definir.pdf
Amor o egoísmo, esa es la cuestión por definir.pdf
 
Acuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdfAcuerdo 05_04_24 Lineamientos del CTE.pdf
Acuerdo 05_04_24 Lineamientos del CTE.pdf
 
Presentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptxPresentación Bloque 3 Actividad 2 transversal.pptx
Presentación Bloque 3 Actividad 2 transversal.pptx
 
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE     9-4-24 (1).docx
4° SES MATE DESCOMP. ADIT. DE NUMEROS SOBRE CASOS DE DENGUE 9-4-24 (1).docx
 
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdfPROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
PROGRAMACIÓN CURRICULAR - DPCC- 5°-2024.pdf
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
PÉNSUM ENFERMERIA 2024 - ECUGENIUS S.A. V2
 
Acuerdo segundo periodo - Grado Noveno.pptx
Acuerdo segundo periodo - Grado Noveno.pptxAcuerdo segundo periodo - Grado Noveno.pptx
Acuerdo segundo periodo - Grado Noveno.pptx
 

ClasesObjetosRepaso

  • 1. Clases y Objetos Pequeño Repaso
  • 2.
  • 3. Define los atributos y métodos con los que contarán todos los objetos de esta clase.
  • 4. Pensemos en la clase pelota. Qué es una pelota? Una pelota es un objeto circular que tiene color y que dependiendo del material en que se elabore puede rebotar o no
  • 5.
  • 6.
  • 11.
  • 12. String[] materialesPermitidos = {“plastico”,”tela”,”cuero”};//define un arreglo
  • 13. Arreglo materialesPermitidos materialesPermitidos 0 1 2 plastico tela cuero Índice del arreglo Para acceder al contenido del arreglo se utiliza la sintaxis: nombreArreglo[indice] Por ejemplo para recuperar el valor plástico: materialesPermitidos[0]
  • 14.
  • 15. Pelota(color): constructor – sobrecargado – que recibe un parámetro, correspondiente al color de la pelota que se está creando (instanciando)
  • 16. dePlastico(): método que define material = plastico
  • 17. deTela(): método que define material = tela
  • 18. deCuero(): método que define material = cuero
  • 19. Clase Pelota (Pelota.java) class Pelota{ String color; String material; //Arreglo de Strings que define los materiales permitidos String[] materialesPermitidos = {"plastico","tela","cuero"}; /* * Constructor */ Pelota(){ color = "Blanco";//por defecto las pelotas se crean Blancas material = materialesPermitidos[0];//por defecto se crean de plastico } /* * Constructor sobrecargado: permite definir el color * deseado al momento de la construcción de la pelota */ Pelota(String colorDeseado){ color = colorDeseado;//por defecto las pelotas se crean Blancas material = materialesPermitidos[0];//por defectos se crean de plastico } /* * modifica el material de una pelota conviertiendolo en plastico */ void dePlastico(){ material = materialesPermitidos[0]; } /* * modifica el material de una pelota conviertiendolo en tela */ void deTela(){ material = materialesPermitidos[1]; } /* * modifica el material de una pelota conviertiendolo en cuero */ void deCuero(){ material = materialesPermitidos[2]; } }
  • 20.
  • 21. Clase Fábrica (Fabrica.java) /* * Clase Fabrica: * hara uso de la clase Pelota * para fabricar las pelotas */ class Fabrica{ public static void main(String[] args){ //fabricacion de una pelota blanca de plastico Pelota producto1 = new Pelota(); //fabricacion de una pelota amarilla de plastico Pelota producto2 = new Pelota("Amarillo"); //modificacion de la primera pelota para que sea de cuero producto1.deCuero(); //modificacion de la segunda pelota para que sea de tela producto2.deTela(); //notificacion al usuario final System.out.println("Se han fabricado - instanciado - dos pelotas diferentes"); } }
  • 22.
  • 23. Asimismo en la clase Fábrica debemos hacer uso del nuevo método definido para imprimir las características de cada producto
  • 24. Método mostrarCaracteristicas (Pelota.java) /* * permite visualizar el material y el color de * una pelota */ String[] mostrarCaracteristicas(){ String[] caracteristicas;//se define un arreglo caracteristicas = new String[2];//el arreglo tendra dos posiciones caracteristicas[0] = color;//en la posicion 0 tendra el color caracteristicas[1] = material;//en la posicion 1 tendra el material return caracteristicas; }
  • 25. Consultando los productos (Fabrica.java) //detalle de las pelotas fabricadas System.out.println("Pelota 1"); System.out.println("Color: "+producto1. mostrarCaracteristicas()[0] ); System.out.println("Material: "+producto1. mostrarCaracteristicas()[1] ); System.out.println("Pelota 2"); System.out.println("Color: "+producto2.mostrarCaracteristicas()[0]); System.out.println("Material: "+producto2.mostrarCaracteristicas()[1]);
  • 26. Aplicación Curso Clases Kiosko y Departamento
  • 27.
  • 28. Departamento.java class Departamento{ String nombre; //constructor Departamento(){ nombre = "Sin Nombre"; } /* * constructor sobrecargado: * esta nueva version del constructor permitira * fijar el nombre de un departamento tan pronto * como se crea */ Departamento(String auxNombre){ nombre = auxNombre; } /* * este metodo permite cambiar el nombre * de un departamento previamente creado * se habla de cambiar en lugar de definir * pues en el peor de los casos un departamento * se llama Sin Nombre - que ya es en si un nombre - */ void cambiarNombre(String nuevoNombre){ nombre = nuevoNombre; } /* * este metodo permite recuperar el nombre * de un departamento creado previamente */ String recuperarNombre(){ return nombre; } }
  • 29.
  • 30. Dentro de este método serán creados 5 Departamentos diferentes con los siguientes nombres: Hogar, Belleza, Entretenimiento, Libros, Jardín
  • 31. El método presentará la información al usuario dándole la bienvenida al almacen por Departamentos
  • 32. Kiosko.java class Kiosko{ /* * Este metodo sera el punto de entrada de la * aplicacion */ public static void main(String[] args){ /* * arreglo de Strings con los nombres de los * departamentos */ String[] nombresDepartamentos = {"Hogar","Belleza","Entretenimiento", "Libros","Jardin"};//1 statement puede escribirse en varias lineas // String auxiliar de bienvenida al usuario String saludo = "Bienvenido a Nuestra Tienda de Departamentos"; // variable tipo int auxiliar para el listado int aux = 0; /* * creacion de los 5 Departamentos usando el constructor * sobrecargado */ Departamento depto1 = new Departamento(nombresDepartamentos[0]); Departamento depto2 = new Departamento(nombresDepartamentos[1]); Departamento depto3 = new Departamento(nombresDepartamentos[2]); Departamento depto4 = new Departamento(nombresDepartamentos[3]); Departamento depto5 = new Departamento(nombresDepartamentos[4]); /* * Mensaje de bienvenida al usuario, indicacion del numero de * departamentos existentes y listado de los mismos */ System.out.println(saludo); System.out.println("Contamos con los siguientes (" +nombresDepartamentos.length+") Departamentos:"); System.out.println(++aux+" - "+depto1.recuperarNombre()); System.out.println(++aux+" - "+depto2.recuperarNombre()); System.out.println(++aux+" - "+depto3.recuperarNombre()); System.out.println(++aux+" - "+depto4.recuperarNombre()); System.out.println(++aux+" - "+depto5.recuperarNombre()); } }
  • 33. Control de Flujo Definiendo el curso a seguir dentro de la aplicación
  • 34.
  • 35. Simple1.java - Ejemplo class Simple1{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if( args.length == 0 ){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple1"); } System.out.println("Fin de la primera prueba"); } }
  • 36.
  • 37.
  • 38. length es un atributo de los arreglos que se utiliza para determinar su tamaño
  • 39.
  • 40. Simple2.java class Simple2{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if(args.length == 0){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple2"); }else{ System.out.println("Usted paso "+args.length+" parametro(s) a la aplicacion Simple2"); } System.out.println("Fin de la segunda prueba"); } } true false
  • 41.
  • 42. Simple3.java class Simple3{ /* * entry point de la clase Simple1. En esta * ocasion se empleara el arreglo de parametros * de entrada */ public static void main(String[] args){ if(args.length == 0){ System.out.println("Usted no paso ningun parametro a la aplicacion Simple3"); }else{ if(args.length > 1){ System.out.println("Usted paso mas de 1 parametro a la aplicacion Simple3"); }else{ System.out.println("Usted paso exactamente 1 parametro a la aplicacion Simple3"); } } System.out.println("Fin de la segunda prueba"); } }
  • 43.
  • 44. La aplicación deberá contar con un mensaje de ayuda que aparezca cuando el usuario ingrese el caracter ?, dicho mensaje será: Para acceder a la información del departamento ingrese un número entre 1 y 5 y presione ENTER.
  • 45. La aplicación deberá presentar un mensaje de error si el usuario ingresa cualquier otro valor.
  • 46.
  • 47. Para poder usar este método es necesario declarar una excepción
  • 48. ReadMe.java – leer un int import java.io.IOException; //requerida para el manejo de excepciones class ReadMe{ public static void main(String[] args){ //variable auxiliar para almacenar un int int numeroIngresado; System.out.println("Ingrese un numero: "); try{ numeroIngresado = (int)System.in.read(); /* * numeroIngresado contiene un valor ASCII * que debe modificarse antes de poderse * usar */ System.out.println(numeroIngresado - '0');//para convertir del valor ASCII al int } catch (IOException e){ System.out.println("No se puede leer el dato"); } }//main method }//ReadMe Class
  • 49. ReadMe2.java – leer un char import java.io.IOException;//requerida para el manejo de excepciones class ReadMe2{ public static void main(String[] args){ //variable auxiliar para almacenar un char char caracterIngresado; System.out.println("Ingrese un caracter: "); try{ caracterIngresado = (char)System.in.read(); System.out.println(caracterIngresado); } catch (IOException e){ System.out.println("No se puede leer el dato"); } } }
  • 50. Kiosko.java – modificaciones solicitadas //modificaciones requeridas para implementar el ejercicio // de la diapositiva 28 int asciiValue; //recuerde que el valor es el codigo ASCII System.out.println(&quot;Ingrese el numero del departamento de su interes o ? para mas informacion&quot;); try{ asciiValue = System.in.read(); /* * Los valores de la tabla ASCII para los numeros 1 al 5 son * 49,50,51,52,53 * El valor del simbolo ? es: 63 */ if(asciiValue >= 49 & asciiValue <= 53){ //se trata de un departamento valido y se presenta la informacion if(asciiValue == 49){ System.out.println(&quot;Departamento: &quot;+depto1.recuperarNombre()); } if(asciiValue == 50){ System.out.println(&quot;Departamento: &quot;+depto2.recuperarNombre()); } if(asciiValue == 51){ System.out.println(&quot;Departamento: &quot;+depto3.recuperarNombre()); } if(asciiValue == 52){ System.out.println(&quot;Departamento: &quot;+depto4.recuperarNombre()); } if(asciiValue == 53){ System.out.println(&quot;Departamento: &quot;+depto5.recuperarNombre()); } } if(asciiValue == 63){ System.out.println(&quot;Para acceder a la informacion del departamento ingrese un numero entre 1 y 5 y presione ENTER&quot;); } /* * si en este punto la variable isValid es false quiere decir que * el usuario ingreso un dato invalido */ if((asciiValue>=0 & asciiValue<49)|(asciiValue>53 & asciiValue<63)|asciiValue>63){ System.out.println(&quot;Opcion Invalida&quot;); } } catch(IOException e){ System.out.println(&quot;Se produjo un error al intentar leer su informacion&quot;); }
  • 52.
  • 53. Simple4.java – For Loop import java.io.IOException;//requerida para el manejo de excepciones class Simple4{ public static void main(String[] args){ //el primer parametro ingresado por el usuario //es el limite hasta el que se ejecuta el ciclo For try{ for(int i=0;i< Integer.parseInt(args[0]); i++){ System.out.println(i); } } catch( ArrayIndexOutOfBoundsException e){ System.out.println(&quot;No es posible iterar ese numero de veces&quot;); } } }
  • 54.
  • 55. Kiosko.java Departamento depto1 = new Departamento(nombresDepartamentos[0]); Departamento depto2 = new Departamento(nombresDepartamentos[1]); Departamento depto3 = new Departamento(nombresDepartamentos[2]); Departamento depto4 = new Departamento(nombresDepartamentos[3]); Departamento depto5 = new Departamento(nombresDepartamentos[4]); //el cambio que sigue requiere un arreglo de departamentos para //su implementacion Departamento[] depto = new Departamento[nombresDepartamentos.length]; for(int i=0;i<nombresDepartamentos.length;i++){ depto[i] = new Departamento(nombresDepartamentos[i]); } ANTES DESPUES
  • 56. Kiosko.java System.out.println(saludo); System.out.println(&quot;Contamos con los siguientes (&quot; +nombresDepartamentos.length+&quot;) Departamentos:&quot;); System.out.println(++aux+&quot; - &quot;+depto1.recuperarNombre()); System.out.println(++aux+&quot; - &quot;+depto2.recuperarNombre()); System.out.println(++aux+&quot; - &quot;+depto3.recuperarNombre()); System.out.println(++aux+&quot; - &quot;+depto4.recuperarNombre()); System.out.println(++aux+&quot; - &quot;+depto5.recuperarNombre()); for(int i=0;i<nombresDepartamentos.length;i++){ System.out.println(++aux+&quot; - &quot;+depto[i].recuperarNombre()); } ANTES DESPUES
  • 57.
  • 58. El Loop Do..While es muy similar al While, pero la diferencia entre los dos reside en que en éste último las instrucciones contenidas siempre se ejecutan al menos una vez
  • 59. Simple5.java – While vs Do..While class Simple5{ public static void main(String[] args){ int aux = 1; /* * esta es la diferencia entre while y do while */ while(aux<=Integer.parseInt(args[0])){ System.out.println(&quot;While - paso &quot;+aux); aux++; } aux = 1; do{ System.out.println(&quot;Do..While - paso &quot;+aux); aux++; }while(aux<=Integer.parseInt(args[0])); } }
  • 60.
  • 61.
  • 63.