Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. public class OuterClass
  2. {
  3.     private String messaggio = "Siamo nella classe";
  4.     private static String messaggioStatico = "Siamo nella classe statica";
  5.    
  6.     //se chiamo questo metodo di Outer Class cosa stamperà?
  7.     public void stampaMessaggio()
  8.     {
  9.         System.out.println(messaggio + " esterna");
  10.     }
  11.    
  12.     //classe INTERNA e pubblica, la si istanzia come visto nel video?
  13.     public class InnerClass
  14.     {
  15.         //metodo interno alla classe INTERNA
  16.         public void stampa()
  17.         {
  18.             System.out.println(messaggio + " interna");
  19.         }
  20.     }
  21.    
  22.     //metodo all'interno del quale è stata definita una classe
  23.     public void metodoConClasse()
  24.     {
  25.         //perché è dichiarata final? Posso non dichiararla final?
  26.         final int localInt = 5;
  27.        
  28.         //classe INTERNA al METODO della classe ESTERNA
  29.         class classeInMetodo
  30.         {
  31.             //se tolgo questa istruzione, posso non dichiarare final la variabile localInt di metodoConClasse?
  32.             int classInt = localInt;
  33.         }
  34.     }
  35.    
  36.     //classe INTERNA e STATICA?
  37.     public static class StaticClass
  38.     {
  39.         //metodo della classe statica interna
  40.         //posso renderlo un metodo statico?
  41.         //posso rendere i metodi delle altre classi statici?
  42.         public void stampa()
  43.         {
  44.             System.out.println(messaggioStatico + " interna");
  45.         }
  46.     }
  47.    
  48.     //classe INTERA e PRIVATA, posso istanziarla come abbiamo fatto con InnerClass?
  49.     private class PrivateClass
  50.     {
  51.         public void stampa()
  52.         {
  53.             System.out.println(messaggio + " interna e privata");
  54.         }
  55.     }
  56. }