Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    161

    [java]domanda: classi private

    una domandina... stupida mi sa, ma io con i modificatori non vado molto d'accordo...

    se una classe viene dichiarata private e al suo interno viene solamente definita una variabile di tipo primitivo (anch'essa privata), posso creare un oggerro di quella classe e usare la variabile liberamente?

    per intenderci meglio: perche questo "programma" funziona corettamente? (per quello che ho detto sopra spero...)
    codice:
    public class ClsSped {
        public PaeseDestinatario Paese(String destinazione, int nrColli) {
        return new PaeseDestinatario(destinazione, nrColli);
        }
        public void spedizione (int nrColli, String destinazione) {
        PaeseDestinatario pDest=new PaeseDestinatario(destinazione,nrColli);
        System.out.println("Destinatario: "+pDest.getPaese());
        System.out.println("Quantità: "+pDest.getNrColli());
        }
        private class Materiale {private int nrColli;}
        protected class PaeseDestinatario {
        private String destinazione;
        public Materiale materiale=new Materiale();
        public PaeseDestinatario(String destinazione, int nrColli) {
            this.destinazione=destinazione;
            materiale.nrColli=nrColli;
        }
        public String getPaese() {
            return destinazione;
        }
        public int getNrColli() {
            return materiale.nrColli;
        }
      }
    }
    
    public class Sped {
        public static void main (String[] args) {
        ClsSped transazione=new ClsSped();
        transazione.spedizione(30,"Norvegia");
        }
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]domanda: classi private

    Originariamente inviato da ali7.p
    perche questo "programma" funziona corettamente?
    Quello che ti posso dire, in modo breve, è che una classe innestata (inner class) ha un legame molto "particolare" con la classe che la contiene. Ecco perché funziona.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.