lpr-b:lpr-b-09:faq
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
lpr-b:lpr-b-09:faq [24/09/2009 alle 14:17 (16 anni fa)] – Andrea Corradini | lpr-b:lpr-b-09:faq [20/10/2009 alle 15:23 (16 anni fa)] (versione attuale) – Andrea Corradini | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
+ | |||
+ | |||
====== FAQ (Frequently Asked Questions) ====== | ====== FAQ (Frequently Asked Questions) ====== | ||
[[start|Torna alla pagina principale di LPR-B-09]] | [[start|Torna alla pagina principale di LPR-B-09]] | ||
- | ===== Domande su esercitazioni | + | ====== Eclipse ====== |
+ | |||
+ | ===== Parametri di linea di comando | ||
- | ==== Come si settano i parametri d' | + | ** Come si settano i parametri d' |
Supponendo di avere una classe: | Supponendo di avere una classe: | ||
Linea 43: | Linea 47: | ||
----------------------------------------------------------------- | ----------------------------------------------------------------- | ||
- | ==== Come fare per avviare Eclipse se all' | + | ===== Problemi con avvio di Eclipse ===== |
+ | |||
+ | ** Come fare per avviare Eclipse se all' | ||
A causa di una chiusura errata di Eclipse (ad es., tramite il comando | A causa di una chiusura errata di Eclipse (ad es., tramite il comando | ||
''" | ''" | ||
- | sbloccarlo è necessario rimuovere il file .lock che si trova nella | + | sbloccarlo è necessario rimuovere il file '' |
- | directory .metadata del workspace. Ad es.: | + | directory |
< | < | ||
---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ||
- | ==== Dove stanno i file .java e .class in un progetto creato con Eclipse e come si avvia da shell un programma creato tramite Eclipse? | + | ===== File .java e .class in Eclipse ===== |
+ | |||
+ | ** Dove stanno i file .java e .class in un progetto creato con Eclipse e come si avvia da shell un programma creato tramite Eclipse? | ||
Al momento della creazione di un project in Eclipse, nella seconda | Al momento della creazione di un project in Eclipse, nella seconda | ||
schermata appare un' | schermata appare un' | ||
+ | | ||
+ | * use project folder as root for sources and class files | ||
+ | * create separate folders for sources and class files | ||
- | - use project folder as root for sources and class files | ||
- | - create separate folders for sources and class files | ||
che di default (modificabile) è settata sulla seconda scelta. In | che di default (modificabile) è settata sulla seconda scelta. In | ||
Linea 79: | Linea 88: | ||
programma: | programma: | ||
- | se si è scelto di usare directory separate per bin e src: | + | |
e si definisce il package " | e si definisce il package " | ||
| | ||
Linea 86: | Linea 95: | ||
| | ||
| | ||
- | con un' | + | |
e si definisce il package " | e si definisce il package " | ||
| | ||
Linea 95: | Linea 104: | ||
In tutti i casi (sia da Eclipse che da shell), se si vuole aprire un | In tutti i casi (sia da Eclipse che da shell), se si vuole aprire un | ||
- | file usando un path relativo, ad es. tramite il comando ' | + | file usando un path relativo, ad es. tramite il comando |
- | in = new FileInputStream(" | + | in = new FileInputStream(" |
stia nella current directory. Per ottenere il nome della current | stia nella current directory. Per ottenere il nome della current | ||
directory da Java, si può usare il comando: | directory da Java, si può usare il comando: | ||
- | System.getProperty(" | + | '' |
--------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ||
- | 4)Quali sono le convenzioni per i nomi in Java? | + | ====== |
- | -classi: prima lettera maiuscola | + | ===== Convenzioni per i nomi in Java ===== |
- | class Raster; | + | |
- | class ImageSprite; | + | |
- | -interfacce: | ||
- | interface RasterDelegate; | ||
- | interface Storing; | ||
- | -metodi: prima lettera | + | * classi: prima lettera |
- | run(); | + | < |
- | runFast(); | + | class Raster; |
- | getBackground(); | + | class ImageSprite; </ |
- | -variabili: prima lettera minuscola | + | * interfacce: prima lettere maiuscola |
- | int i; | + | < |
- | char c; | + | interface RasterDelegate; |
- | float myWidth; | + | interface Storing;</ |
+ | |||
+ | * metodi: prima lettera minuscola | ||
+ | < | ||
+ | run(); | ||
+ | runFast(); | ||
+ | getBackground();</ | ||
+ | |||
+ | * variabili: prima lettera minuscola | ||
+ | < | ||
+ | | ||
+ | char c; | ||
+ | float myWidth;</ | ||
Per i nomi di classi, interfacce, metodi e variabili si usa la notazione | Per i nomi di classi, interfacce, metodi e variabili si usa la notazione | ||
Linea 125: | Linea 141: | ||
al nome deve essere maiuscola. | al nome deve essere maiuscola. | ||
- | -costanti: tutte maiuscole, con parole interne separate dal simbolo | + | * costanti: tutte maiuscole, con parole interne separate dal simbolo underscore " |
- | underscore " | + | < |
- | static final int MIN_WIDTH = 4; | + | |
- | static final int MAX_WIDTH = 999; | + | static final int MAX_WIDTH = 999; |
- | static final int GET_THE_CPU = 1; | + | static final int GET_THE_CPU = 1;</ |
- | -package: nomi minuscoli | + | * package: nomi minuscoli |
- | com.sun.eng | + | < |
- | com.apple.quicktime.v2 | + | |
- | edu.cmu.cs.bovik.cheese | + | com.apple.quicktime.v2 |
+ | edu.cmu.cs.bovik.cheese</ | ||
Vedere anche: http:// | Vedere anche: http:// | ||
+ | |||
+ | ===== Conversione dei parametri del main ===== | ||
+ | |||
+ | ** Come convertire i parametri del main (stringhe) in interi/ | ||
+ | |||
+ | Supponiamo che il programma si aspetti due parametri, un intero e un | ||
+ | double. In questo caso, si può fare così: | ||
+ | |||
+ | < | ||
+ | int myInt = Integer.parseInt(args[0]); | ||
+ | double myDouble = Double.parseDouble(args[1]); | ||
+ | </ | ||
+ | |||
+ | Può convenire mettere queste istruzioni all' | ||
+ | catturare eventuali eccezioni che sono dovute, ad esempio, a mancanza di | ||
+ | input ('' | ||
+ | ('' | ||
+ | default per le variabili '' | ||
+ | messaggio di errore all' | ||
+ | |||
+ | ===== Generazione di numeri random ==== | ||
+ | |||
+ | Si può usare la classe '' | ||
+ | |||
+ | < | ||
+ | int MAX_VALUE = 100; | ||
+ | Random randomGenerator = new Random(); | ||
+ | // oppure: new Random(System.currentTimeMillis()); | ||
+ | int randomInt = randomGenerator.nextInt(MAX_VALUE);</ | ||
+ | |||
+ | **Attenzione**: | ||
+ | '' | ||
+ | numeri compresi tra 1 e '' | ||
+ | |||
+ | In alternativa si può usare il metodo statico '' | ||
+ | un '' | ||
+ | |||
+ | < | ||
+ | |||
+ | (anche in questo caso, '' | ||
+ | |||
+ | **Attenzione**: | ||
+ | |||
+ | < | ||
+ | |||
+ | Infatti, dato che l' | ||
+ | l' | ||
+ | viene convertito a 0 e quindi il risultato della moltiplicazione è 0. | ||
+ | |||
+ | |||
+ | ====== Callable ====== | ||
+ | |||
+ | ===== Eccezioni lanciate da call() ===== | ||
+ | |||
+ | ** Come si può gestire l' | ||
+ | |||
+ | A differenza del metodo '' | ||
+ | lanciare una qualunque eccezione, anche controllata. L' | ||
+ | incapsulata in una eccezione di tipo '' | ||
+ | esegue il metodo '' | ||
+ | L' | ||
+ | '' | ||
+ | |||
+ | ===== Quando termina una '' | ||
+ | |||
+ | ** Come si può essere avvisati quando termina una '' | ||
+ | |||
+ | Come descritto nella API di '' | ||
+ | la '' | ||
+ | non fa niente. Questo metodo può essere sovrascritto in una sottoclasse in modo da notificare | ||
+ | la terminazione a un altro thread in attesa dl risultato. | ||
+ | |||
lpr-b/lpr-b-09/faq.1253801832.txt.gz · Ultima modifica: 24/09/2009 alle 14:17 (16 anni fa) da Andrea Corradini