Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Piu classi in un file .java

    Ciao,
    non so il perchè ma sto facendo un corso java a lavoro, però ho un problema.

    Come faccio a dichiarare piu classi all'interno dello stesso .java?
    Il file viene compilato ma quando lo lancio si incazza perchè una delle mie 2 classi non ha il main

    codice:
    /**
        Definire 2 classi, una che rappresenti un oggetto di tipo Cerchio 
        che abbia una variabile di istanza raggio (di tipo int), 
        una costante PI (pi greco con valore 3.14), un costruttore che abbia come parametro 
        una variabile che valorizzi il raggio e due metodi: uno che calcola la circonferenza 
        ed uno che calcola l’area.
        La seconda classe, denominata DisegnaCerchio, 
        deve creare un oggetto di tipo cerchio e utilizzando gli attributi della classe Cerchio 
        stampare in output il valore del raggio, del perimetro e delle circonferenza.
    */
    
    
    class disegnaCerchio
    {
        public static void main(String[] args)
        {
            cerchio mioCerchio = new cerchio(17);
        
            System.out.println("Il valore del raggio e " + mioCerchio.raggio);
            System.out.println("Il valore della circonferenza e " + mioCerchio.circonferenza());
            System.out.println("Il valore dell'area e " + mioCerchio.area());
        }
    }
    
    
    public class cerchio
    {
        public int raggio = 0;
        static final double PI = 3.14;
        
        public cerchio(int raggio)
        {
            this.raggio = raggio;
        }
        
        public double circonferenza()
        {
            return 2*PI*raggio;
        }
        
        public double area()
        {
            return PI*raggio*raggio;
        }
    }

    come devo fare?

    Ciao
    Ultima modifica di LeleFT; 17-06-2015 a 16:28 Motivo: Aggiunti i tag CODE

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Satsuki Kenbu Visualizza il messaggio
    Come faccio a dichiarare piu classi all'interno dello stesso .java?
    Un singolo sorgente .java può contenere più tipi (classi, interfacce, enum ....). Ma ci sono delle regole: solo un tipo al massimo può essere "public" e se c'è tale tipo public, il nome del file sorgente (a parte ".java") deve corrispondere esattamente al nome di questo tipo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Ok, ti ringrazio

    Visto che ci sono, io per lanciare un programma devo fare da linea di comando java -cp . disegnaCerchio, Perchè? Posso eliminare quel cp?

  4. #4
    Ciao,
    scusa "non sai perché stai facendo un corso"?
    cioé un motivo ci sarà...
    I computer sono incredibilmente veloci, accurati e stupidi.
    Gli uomini sono incredibilmente lenti, inaccurati e intelligenti.
    Insieme sono una potenza che supera l'immaginazione.

    A.Einstein

  5. #5
    Ti giuro che non ne ho idea XD

    Ma visto che mi pagano...

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    -cp è un'opzione che serve a specificare il CLASSPATH (cioè l'elenco di cartelle e file .jar dentro cui la JVM cercherà le classi che vengono usate dal programma).

    Il punto che viene indicato dopo "-cp" indica la cartella corrente (cioè, dice alla JVM che il CLASSPATH è costituito dalla cartella corrente).

    Puoi omettere l'opzione -cp (e quindi anche il punto subito dopo) se e solo se:

    1) Stai avviando un file JAR (infatti, se viene avviato un file JAR l'indicazione del classpath viene ignorata e viene usata quella interna nel MANIFEST del JAR)

    oppure

    2) La variabile d'ambiente (documentati su cos'è) CLASSPATH è correttamente configurata

    oppure

    3) La variabile d'ambiente CLASSPATH non esiste e tu sei già nella directory giusta


    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

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.