Curso de Java Programación Orientada a Objetos Prof. Ing. Guido Acosta.

Post on 23-Jan-2016

229 views 0 download

Transcript of Curso de Java Programación Orientada a Objetos Prof. Ing. Guido Acosta.

Curso de Java

Programación Orientada a Objetos

Curso de Java

Programación Orientada a Objetos

Prof. Ing. Guido Acosta

Contenido de la clase

-Polimorfismo

- Sobrecarga de métodos y constructores

-Librerías de clases

- Gestión Académica

Gestión Académica – Diseño de Clases

Curso

1Alumnos alumnos[]Profesor profesordouble promedCurs()

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

1..*

ProfesorString nombreString codigoNotaProfesor nota

1

1

MaterianombreNota notaMat

NotaString descripcionString comentarios[]double notafinal()

1 PaginaWebString descripcionString link

NotaProfesordouble factorCalificac double notafinal()

1NotaAlumno

int parciales[]double notafinal()

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

LibroString nombreString autor

1

1

1

1

1

1

1

1

Gestión Académica – Diseño de Clases

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

MaterianombreNota notaMat

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

Gestión Académica – Diseño de Clases

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

MaterianombreNota notaMat

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

Gestión Académica – Diseño de Clases

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

MaterianombreNota notaMat

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

¿Cómo almacenamos MatBasica y MatComp en una vector de tipo Materia?

Gestión Académica – Diseño de Clases

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

MaterianombreNota notaMat

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

Materia

MatBasica MatComp MatBasica

Gestión Académica – Diseño de Clases

AlumnoString nombreint codigoMateria materias[]boolean pasaCurso()

MaterianombreNota notaMat

MatBasicaLibro recurso

MatCompPaginaWeb recurso

1 1..*

Polimorfismo

MatBasica MatComp MatBasica

Polimorfismo - Ejemplo

Polimorfismo - Métodos

Polimorfismo - Métodos

Polimorfismo - Métodos

Polimorfismo - Métodos

Polimorfismo - Métodos

Sobreescritura de métodos

Polimorfismo - Sobreescritura

Polimorfismo - Sobreescritura

Contenido de la clase

-Polimorfismo

- Sobrecarga de métodos y constructores

-Librerías de clases

- Gestión Académica

Sobrecarga de método

Java permite que varios métodos dentro de una clase se llamen igual, siempre y cuando su lista de parámetros sea distinta.

Sobrecarga de métodos

Java permite que varios métodos dentro de una clase se llamen igual, siempre y cuando su lista de parámetros sea distinta.

Sobrecarga de métodos

Sobrecarga de métodos

Sobrecarga del método ordenar. Cada método tiene una lista de parámetros diferentes.

Sobrecarga de métodos

No es válido definir dos métodos con el mismo nombre que difieran únicamente por el tipo de valor que devuelven.

Contenido de la clase

-Polimorfismo

- Sobrecarga de métodos y constructores

-Librerías de clases

- Gestión Académica

Librería de clases

http://download.oracle.com/javase/6/docs/index.html

http://download.oracle.com/javase/6/docs/index.htmlhttp://download.oracle.com/javase/6/docs/index.html

Librería de clasesString - Split

String - Replace

Librería de clasesMath

Librería de clasesCalendar y GregorianCalendar

Librería de clasesCalendar y GregorianCalendar - Impresiones

Librería de clasesArrayList

- Clase para almacenar una colección de objetos

- Su tamaño es dinámico

- Su índice empieza en cero

Librería de clases

Librería de clases

¿Cómo agregamos más alumnos?

Librería de clasesUso de ArrayList

Librería de clasesUso de ArrayList

Contenido de la clase

-Polimorfismo

- Sobrecarga de métodos y constructores

-Librerías de clases

- Gestión Académica

Ejercicio Gestión Académica (4)Los alumnos pueden prestar los libros de la biblioteca. Es necesario llevar un control de los libros prestamos por los alumnos.

Tareas1. Definir las nuevas clases con sus atributos y métodos. 2. Aplicar todos los conceptos aprendidos.

• Incluir el método agregarAlumno a la clase Alumno

Ejercicio Gestión Académica (1)Escribir un programa que gestione las notas de los alumnos y profesores. Los alumnos tienen tres exámenes parciales. La nota final del alumno se obtiene mediante el promedio de las tres notas parciales. Además para calificar al profesor, el programa deberá ofrecer una funcionalidad para el cálculo del promedio del curso. El rendimiento del profesor se obtiene a partir del promedio del curso:

Calificación profesor = promedio * 0.6

Tareas1. Definir las clases necesarias2. Crear un menú con las operaciones disponibles

1. Cargar datos de los alumnos (especificar cantidad de alumnos)2. Cargar datos del profesor3. Mostrar resultados

1. Calificación del profesor2. Calificación de un alumno en particular3. Promedio del curso

3. Implementar los métodos para los cálculos4. Implementar métodos para validaciones

Ejercicio Gestión Académica (2)Los alumnos tienen tres exámenes parciales en cada materia. La nota final del alumno en una materia se obtiene mediante el promedio de las tres notas parciales. Existen materias básicas y complementarias. El alumno pasa de curso si obtiene una nota mayor o igual a 2 en el 80% de las materias básicas y la misma nota en el 20% de las notas complementarias.

Tareas1. Definir las clases necesarias.2. Implementar los métodos para los cálculos

Ejercicio Gestión Académica (3)Cada materia básica tiene un libro cabecera. Las fuentes de información para las materias complementarias con direcciones de páginas web que se le pasa a los alumnos.

Por otro lado, cada vez que el profesor dicta la clase, se le tiene que sumar las horas de enseñanza para el cálculo del sueldo a fin de mes.

Tareas1. Utilizar herencia para las materias y las personas. 2. Agregar los atributos y métodos a la clase profesor.3. Alumnos pueden prestar libros de la biblioteca. Primeramente definir

las bibliotecas y los libros y en las siguientes clases usar la biblioteca.

4. Las materias tienen libros definidos para las clases.5. Definir los datos de entrada en archivos y enseñar lectura de

archivos.