Laboratorio di JAVA FAC-SIMILE di Prova al calcolatore

Laboratorio di JAVA
FAC-SIMILE di Prova al calcolatore
Esercizio 1
Si consideri la classe JAVA Tappa.java per la rappresentazione delle tappe di una competizione sportiva (gara).
Una tappa è rappresentata dal nome (stringa) e dal punteggio (intero).
public class Tappa {
private //da definire
private //da definire
public Tappa ( String n , int p ) {
//da definire
}
public String getNome () {
//da definire
}
public int getPunteggio () {
//da definire
}
public void setPunteggio ( int p ) {
//da definire
}
}
public String toString () {
//da definire
}
Completare le parti di codice mancanti.
Utilizzando tale classe definire una classe JAVA Gara.java per la rappresentazione di competizioni sportive suddivise in
tappe.
Ogni gara contiene l'insieme di tappe di cui è composta (rappresentato mediante un array o un arrayList) e un intero
rappresentante la capienza della gara, ovvero il numero di tappe da cui la gara sarà formata.
La classe dovrà essere dotata dei seguenti metodi:
→costruttore: prende in ingresso un intero rappresentante la capienza della gara ed inizializza di conseguenza
l'array, impostando a null tutte le posizioni dell'array;
→estCompleta: restituisce true se tutte le tappe della gara sono inizializzate, false altrimenti
(suggerimento: una tappa non è inizializzata se la corrispondente posizione nell'array contiene null);
→getCapienzaAttuale: restituisce un intero corrispondente alla capienza attuale della gara;
→getNumeroTappeAttive: restituisce il numero di tappe attualmente inizializzate all'interno della gara;
→aggiungiTappa: aggiunge una nuova tappa alla gara inserendola nella prima posizione libera (ovvero pari a
null) nell'array delle tappe; se la gara risulta completa viene comunicato un messaggio di errore;
→getPunteggioTotale: calcola il punteggio totale effettuando la somma dei punteggi di tutte le tappe
contenute nell'array e lo restituisce sotto forma di intero;
→setNuovoPunteggio(n,p): prende in ingresso una string n e un intero p rappresentanti il nome di una tappa
e un punteggio ed imposta a p il punteggio della tappa con nome n (si supponga per semplicità che tutte le
tappe abbiano un nome diverso);
Scrivere la soluzione in modo da poter compilare e testare con successo il programma attraverso apposite istruzioni
fornite dal docente.