Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    [java] classi nelle classi

    Ciao a tutti. Mi servirebbe avere un dettaglio tecnico.
    Cosa vuol dire e cosa serve mettere classi all'interno di altre classi?
    codice:
    esempio:
    
    class a{
     class b{
     ...
     ...
     }
    ...
    ...
    }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    Beh... mettere una classe all'interno di un'altra classe serve, di solito, quando si deve utilizzare un oggetto della classe interna, solo nella classe esterna.

    Diciamo che serve a risparmiare un file... a volte è più comodo e a volte è utile non far sapere alle altre classi cosa si usa all'interno di una classe più grande.

    Supponi, per esempio, di avere una classe simile ad un Vector che contiene tutti elementi particolari (la chiamiamo A). Supponi che questa classe debba servirsi di una particolare struttura dati (implementabile tramite una classe, che chiamiamo B). Non serve mettere pubblica la classe B perchè solo la classe A ne fa uso (se una classe stà in un file a parte DEVE essere pubblica o, quantomeno, senza modificatore).
    In questo caso è utile avere una classe interna (magari privata) che viene usata:
    codice:
    public class A {
       private class B {
          ...
       }
    
       private B elemento;
       ...
    }
    A volte, invece, è utile raggruppare delle classi all'interno di un'unica classe che crea oggetti statici delle classi interne... è il caso della classe System (la quale ha al suo interno gli oggetti out e in)


    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

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    ok grazie

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 © 2024 vBulletin Solutions, Inc. All rights reserved.