Aiuto quiz programmazione - direttiva "package"

di mrzyasha il
6 risposte

Ciao a tutti, avrei un dubbio per un test a risposta multipla. Tra le seguenti affermazioni, quale delle due è corretta?

1) La direttiva “package auto.utilita;” può essere presente prima della dichiarazione di una qualsiasi classe in un file Java contenuto in una directory “auto\utilita”

2) La direttiva “package auto.utilita;” deve essere la prima dichiarazione di un file Java contenuto in una directory “auto\utilita”

6 Risposte

  • Dicci secondo te quale delle due è quella corretta e perchè. Ne discutiamo.

  • Allora, se ho capito bene come funziona la direttiva package questa serve per “raccogliere” in un unico pacchetto più classi e ogni classe può essere dichiarata appartenente ad un package, ma questo non è obbligatorio perché se non viene dichiarata allora la classe appartiene al package di default. Quindi, direi che la risposta giusta sia la 1)

    Mi viene però il dubbio con la 2) perché, quando questa viene inserita nel file Java, deve effettivamente essere la prima dichiarazione… sbaglio?

  • 22/11/2022 - mrzyasha ha scritto:


    Allora, se ho capito bene come funziona la direttiva package questa serve per “raccogliere” in un unico pacchetto più classi e ogni classe può essere dichiarata appartenente ad un package, ma questo non è obbligatorio perché se non viene dichiarata allora la classe appartiene al package di default. Quindi, direi che la risposta giusta sia la 1)

    Corretto.

    22/11/2022 - mrzyasha ha scritto:


    Mi viene però il dubbio con la 2) perché, quando questa viene inserita nel file Java, deve effettivamente essere la prima dichiarazione… sbaglio?

    Se si usa la direttiva package, questa deve obbligatoriamente essere la prima istruzione nel file ed il file deve trovarsi all'interno di una struttura di directory che si rispecchi nel nome del package… ma nessuno ci obbliga ad usarla (a parte il buon senso). Questo significa che non è la posizione del file a far scattare l'obbligo dell'uso della direttiva. Lo dico in un altro modo: il fatto che un file si trovi all'interno di una directory non significa che per quel file si debba obbligatoriamente usare la direttiva package.

  • Perfetto, quindi in base a questo quale sarebbe la risposta giusta? Mi sfugge qualcosa nel ragionamento? Oppure a livello grammaticale?

  • 22/11/2022 - mrzyasha ha scritto:


    Perfetto, quindi in base a questo quale sarebbe la risposta giusta?

    La 1, l'abbiamo già appurato.

    22/11/2022 - mrzyasha ha scritto:


    Mi sfugge qualcosa nel ragionamento? Oppure a livello grammaticale?

    A livello grammaticale la 2 non è corretta perchè implica che un file che si trova all'interno di una certa cartella debba obbligatoriamente avere la direttiva package. E questo non è vero.

  • Perfetto, ti ringrazio tantissimo!

Devi accedere o registrarti per scrivere nel forum
6 risposte