Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Java - Esercizio - Difficoltà

    Salve a tutti
    sto studiando java e volevo sapere da dove iniziare con questo esercizio :

    Una fabbrica utilizza tre tipi di macchine: Pressa, Smerigliatrice, Imballatrice. Tutte le macchine espongono tra gli altri tre metodi: Start, Stop, GetCounter. Ogni macchina ha un contapezzi, un intero che stabilisce il numero di oggetti prodotti. Mentre una Pressa mantiene la lista delle materie prime, pressione, temperatura, la smerigliatrice definisce il numero di giri ed il colore, ed infine l’imballatrice mantiene il tipo di imballo, l’etichetta, il lotto e la data di produzione.
    Definire una classe per ciascun tipo di macchina. I metodi Stop(), Start() e GetCounter() sono uguali per tutte le macchine. Il metodo Start cambia solo lo stato della macchina in “active”, mentre Stop() lo cambia in “idle”. Il metodo GetCounter() incrementa il contatore dell’oggetto di un valore random compreso tra 1 e 10 e restituisce il valore totale del contatore.


    è giusto pensare ad una superclasse Macchina che implementa i 3 metodi Start, Stop, GetCounter ? e le classi Pressa, Smerigliatrice, Imballatrice che ereditano la superclasse?

    Vado in confusione da quando il prof ha spiegato le classi astratte e le interfaccie
    Qualcuno mi può aiutare?
    Agos

  2. #2
    L'esercizio successivo a quello scritto prima è collegato a questo.

    Popolare l’insieme delle macchine della fabbrica generando un pool di 50 risorse in totale scelte a caso tra le tre tipologie definite nell’esercizio precedente. Dopo averle create occorre avviare (Start()) tutte le machine. Poi ciclicamente occorre leggere tutti i pezzi prodotti (GetCounter()) e quando vengono raggiunti un numero di pezzi maggiore di 100 occorre fermare la macchina individuata (Stop()).
    Agos

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Benvenuto nel forum.

    Ti consiglio fin da subito di leggere il regolamento del forum, visto che il titolo non è dei migliori (lo modifico io).

    Passando al tuo problema, visto che parli di classi astratte e di interfaccie, perchè non vederla in questo modo:

    FunzioniMacchina -> Interfaccia con i tre metodi base
    Macchina -> Classe astratta che implementa l'interfaccia FunzioniMacchina e incapsula il contatore
    Tutte le altre classi estendono Macchina e implementano i loro metodi speciali.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Scusa per il titolo

    e grazie per la risposta.

    nel frattempo avevo creato una superclasse con i tre metodi start stop e getCounter e poi le altre classi che la implementavano.

    Non va bene lo stesso?
    oppure violo qualche concetto?


    Grazie!!!
    Agos

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.