Hola.
¿En que necesitas ayuda exactamente?
¿En usar NetBeans? ¿En hacer un diagrama UML? ¿En emplear POO? ¿En escribir el código?
¿En todo?....
En cualquier caso, lo primero es analizar el enunciado e identificar las "entidades" que toman parte. De estas entidades, tendremos que crear clases para modelarlas.
Por ejemplo. Es evidente que una entidad será
Asignatura.
Una Asignatura tiene un nombre y según el enunciado, va a tener tres notas parciales.
Si creamos una clase de esta entidad, pues sus atributos serán el nombre de Asignatura, de tipo String y las tres notas, que podrían ser de tipo float si queremos recibir notas con decimales.
Estas tres notas parciales se pueden gestionar como tres atributos separados, o bien agruparlas en un único array de tres elementos float. Esto va a gusto del programador (a mi me gusta más usar el array).
Tenemos los atributos, ahora hay que pensar en su constructor.
Con un constructor que reciba por parámetros el nombre que tendrá la Asignatura, sería suficiente.
Si hemos elegido usar un array para las notas, el constructor además se encargaría de inicializarlo.
Ahora pensemos en los métodos.
Uno será el típico
getNombre() para obtener un String con el nombre de la asignatura.
Parece que no será necesario un
setNombre() para poder cambiar el nombre, pero se le puede poner si se desea.
Lo que si será necesario será un método para recibir las notas parciales que tiene la asignatura.
Puede llamarse
setNotaParcial()Si se ha elegido usar tres atributos separados para las notas, se necesitarán tres métodos distintos, uno para cada atributo.
Si se ha elegido usar un array, pues será suficiente un único método, pero este método además de recibir la nota que hay que establecer, ha de recibir en que posición del array se ha insertar (un valor int entre 0 y 2)
El enunciado pide que se pueda calcular la nota definitiva de una Asignatura, es decir, la nota que podemos calcular según las tres notas parciales.
Así que podemos incluir ya un método para que la Asignatura sea capaz de hacer este cómputo por ella misma.
Un método que puede llamarse
getNotaDefinitiva() y retorne un valor float si se ha elegido usar notas con decimales, o un int si se ha elegido usar valores enteros para las notas.
El diagrama UML para esta clase podría ser:
Bien, otra entidad evidente sería
Estudiante.
Un Estudiante tendría también un nombre y 5 Asignaturas.
Las Asignaturas, pueden tratarse individualmente en 5 atributos distintos, o como antes, usar un array de 5 elementos.
Diseña tú el UML para la clase Estudiante, con esos atributos. Piensa que constructor y métodos puede necesitar.
Compártelo aquí cuando lo tengas y vemos si hay que corregir o añadir algo.
Un saludo.