Esercizio biblioteca

di il
4 risposte

Esercizio biblioteca

Salve a tutti,ho appena cominciato con la programmazione java,dovrei svolgere un esercizio che rappresenti una biblioteca che salvi i libri in un array list.Ho capito il funzionamento degli array list ma tuttavia ho qualche difficolta.La classe libro deve contenere anche un metodo per aggiungere un ulteriore libro.
Ho creato la classe libro con relativi attributi e altri metodi, e relativo costruttore con richiesta da input dei dati corrispondenti agli attributi,nel main è stato creato l'oggetto libro, e dichiarato l'array list,ora non saprei come aggiungere il primo libro e aggiungere gli altri creando il metodo per aggiungere libri.
Per favore qualcuno potrebbe spiegarmi come procedere? Grazie mille

4 Risposte

  • Re: Esercizio biblioteca

    1) la classe libro NON PUO avere un metodo per aggiungere altri libri! Ti risulta che i libri di casa tua CONTENGANO dei libri?
    2) la classe libro NON DEVE richiedere le informazioni su libro. QUALCUN ALTRO chiede le informazioni su libro QUINDI crea un'ISTANZA della classe libro con le informazioni acquisite
    3) una BIBLIOTENCA contiene dei libri, QUINDI dovrai creare una classe biblioteca dove puoi:

    - aggiungere un libro
    - rimuovere un libro
    - cercare un libro

    NON SI IMPARA a programmare studiando un linguaggio di programmazione, si impara STUDIANDO che cosa vuol dire programmare. SOLO DOPO si studia un linguaggio di programmazione per poter mettere in pratica le idee.

    Inoltre, la Programmazione ad Oggetti VA CAPITA: bisogna PRIMA capire QUALI SONO gli oggetti coinvolti, quali sono le loro proprieta' e le loro capacita, e COME INTERAGISCONO tra di loro.

    Per fare questo NON SERVE Java, BASTA carta e matita (e gomma)
  • Re: Esercizio biblioteca

    boom ha scritto:


    La classe libro deve contenere anche un metodo per aggiungere un ulteriore libro.
    No, questo non ha senso! Ti ha già risposto migliorabile ma per completezza, se si vuole ragionare nel modo giusto questo dovrebbe essere lo scenario "logico":

    Una classe Libro con:
    - attributi (campi) titolo, ecc...
    - metodi getTitolo(), setTitolo(), ecc....
    - altro eventuale (toString() ecc...)

    Una classe Biblioteca con:
    - attributo es. libri che fa riferimento ad un ArrayList<Libro>
    - metodi per gestire l'insieme dei libri, del tipo:

    public int getNumeroLibri()
    public void aggiungiLibro(Libro libro)
    public void eliminaLibro(Libro libro)
    ecc....

    (devi stabilire quali operazioni si possono fare sulla biblioteca)

    Poi potresti sicuramente avere una ulteriore classe es. ProvaBiblioteca che contiene il main() e in cui metti insieme tutto quanto.
  • Re: Esercizio biblioteca

    Ok quindi devo chiedere in input gli attributi dei libri nel main?Ma non capisco come mai devo creare un?altra classe,i metodi non posso richiamarli nel main direttamente?
    grazie
  • Re: Esercizio biblioteca

    boom ha scritto:


    Ok quindi devo chiedere in input gli attributi dei libri nel main?Ma non capisco come mai devo creare un?altra classe,i metodi non posso richiamarli nel main direttamente?
    grazie
    Mettiamola così: per fare la cosa davvero "pulita" e ben fatta, le classi Libro e Biblioteca NON dovrebbero contenere alcun codice per gestire l'input dall'utente. Dovrebbero solo rappresentare logicamente un libro e una biblioteca cioè un insieme di libri.

    Quindi fai pure una classe es. ProvaBiblioteca (o ApplicazioneBiblioteca ecc..) dove usi es. Scanner da System.in per chiedere in input i dati. Quindi crei 1 solo oggetto Biblioteca e in base agli input dell'utente crei gli oggetti Libro che poi inserisci nell'oggetto Biblioteca.
Devi accedere o registrarti per scrivere nel forum
4 risposte