Discussione:Java (linguaggio)
Da Wikipedia, l'enciclopedia libera.
nell'ambiente Eclipse come si fa a aggiungere all'elenco dei metodi che compare quando si digita dopo l'oggetto "." una descrizione dei metodi come accade in NetBeans?
- Ragazzi, uno che programma in Java con NetBeans ! Perchè vuoi passare a Eclipse, che è troppo IBM oriented? NetBeans è ottimo. Oppure, meglio ancora Idea che è una favola. Scrivimi che ci parliamo, mi interessa sempre scambiare idee con chi programma in Java. Gac 09:41, Ott 29, 2004 (UTC)
Scusate, ma perchè avete riaggiunto MacOsX tra gli OS per i quali è disponibile la 1.5 quando son ancora fermi alla 1.42? Avevo corretto la cosa ieri sera, ma oggi è di nuovo errrata.
Perchè dall'ultima versione di MacOSX (Tiger) la 1.5 è supportata (vedi link http://www.apple.com/macosx/features/java/ ) --Fridrik 20:28, ott 3, 2005 (CEST)
[modifica] Aggiunte
Ho aggiunto 2 righe per l'eredità, più avanti inserirò anche le interfacce e le classi astratte se non lo avrà già fatto qualcun'altro per allora
Silyus 19:02, 20 gen 2006 (CET)
Secondo me, in Java non è possibile parlare di ereditarietà prescindendo dal discorso polimorfismo. Sarebbe bene aggiungere qualche riga anche per quest'ultimo argomento, che ne dici?
Scusate, secondo me è inutile inserire spiegazioni che riguardano le caratteristiche della programmazione ad oggetti come il polimorfismo. Credo che le spiegazioni su questi argomenti dovrebbero essere trattate esclusivamente nelle pagine dedicate alla OOP. Però troverei molto interessante una sezione (es. in basso) su *come* java mette a disposizione gli strumenti della OOP.
Konzen 00:12, 26 feb 2006 (CET)
Concordo sul fatto che 2 righe sul polimorfismo non guasterebbero, se puoi aggiungi pure tu stesso la relativa parte in coda alla mia aggiunta sull'ereditarietà, altrimenti ci penserò io in settimana Silyus 19:02, 20 gen 2006 (CET)
[modifica] Sicurezza in Java
Ciao , scusate, sto cercando di capire qualcosa riguardo il meccanismo di caricamento dinamico delle classi in Java. Da quello che ho capito vi è :
-un bootstrap class loader che carica le classi del core java API , ovvero quelle in rt.ja -un class loader per caricare le estensioni ,ExtClassLoader -un class loader per caricare dal CLASSPATH ,AppClassLOader
Poi se desidero posso implementare un class loader personalizzato derivando dalla classe "ClassLOader" e a paertire da Java 2 anche da "SecureClassLoader". In Java 2 la gerarchia dovrebbe essere la seguente:
ClassLoader--SecureClassLOader--URLClassLOader--AppletClassLoader
Quello che mi chiedo io è: 1-ExtClassLoader ed AppClassLoader derivano da URLClassLOader?
2-Ogni browser implementa il proprio class loader per effettuare il caricamento delle applets, Ma quando il browser scarica un'applet da una pagina e poi scarica un'altra applet da un altra pagina diversa dalla prima, allora utilizza 2 class loader diversi? E se scarica due voilte dalla stessa pagina utilizza sempre il medesimo class loader? E ancora , Ogni class loader pone le classi che ha scaricato in un proprio "namespace", in modo che le applet diverse non possano interferire tra di loro, ma se voglio che le applet comunichino tra di loro, come devo fare?
3-Ma cosa introduce effettivamente in più il SecureClassLOader?, gestisce forse il domini di protezione?
4- molte volte ho trovato scritto "classLoader di sistema"in nnumerosi documenti in rete, ma questo class loader è il bootstarp ClassLoader o cosa?
5-La classe viene caricata dinamicamente mediante i metodi loadClass, e infine viene definita da "defineClass", se non ho capito male, quest'ultimo metodo si occupa anche di passare il bytecode al verificatore, e di inserire la classe in un "dominio di protezione" che volendo può essere passato come parametro. Adesso io mi chiedo , e se non passo nessun dominio di protezione come parametro, la classe dove viene inserita? e con quali permessi? I domini di protezione possono essere creati staticamente, ad esempio quando passo il dominio di protezione al "defineClass" e anche dinamicamente, cioè vengono creati esaminando i permessi delle policy? ma da chi viene effettuato questo esame? Si tratta forse dell AccessController?
Il Software sotto licenza GPL è Software Libero (Free Software), il fatto che i sorgenti siano aperti non significa che sia "opensource": un pre-requisito del software libero è la disponibilità del codice sorgente, il software libero stabilisce le libertà degli utenti, quindi per favore: non utilizzate l'espressione opensource quando intendete Software Libero e software sotto GPL. Mi raccomando!!