Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Samsung rinnova la serie pieghevole di punta con Galaxy Z Fold8 Ultra: pannello interno da 8 pollici quasi senza piega, cerniera Flex Titanium, Snapdragon 8 Elite Gen 5 for Galaxy e batteria finalmente da 5.000 mAh. Prezzo italiano da 2.299 a 2.899 euro. Tra colorimetro, benchmark reali e giorni di uso quotidiano, ecco dove questo pieghevole convince e dove il nome Ultra fatica ancora a trovare piena giustificazione
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-05-2007, 21:41   #1
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
[Java] Non riesco ad importare java.lang.Math

stasera ho iniziato a leggere qualcosa sul java, quindi abbiate pietà
sto scrivendo delle classi che rappresentino figure piane per vedere se ho capito bene le classi, l'ereditarietà, i costruttori, ecc.ecc. e mi sono trovato davanti ad un problema;

all'inizio del file Square.java ho:
Codice:
import java.lang.Math.*;

public class Square {
    ...
}
ma se uso una funzione qualsiasi della classe java.lang.Math (ad es. sqrt) mi dice:
Codice:
C:\java>javac MyProg.java
.\Square.java:19: cannot find symbol
symbol  : method sqrt(double)
location: class Square
        lato = sqrt(area);
               ^
1 error
grazie a chiunque mi aiuterà, e scusate per la domanda niubba

Ultima modifica di AngeL) : 30-05-2007 alle 21:45.
AngeL) è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 21:50   #2
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da AngeL) Guarda i messaggi
stasera ho iniziato a leggere qualcosa sul java, quindi abbiate pietà
sto scrivendo delle classi che rappresentino figure piane per vedere se ho capito bene le classi, l'ereditarietà, i costruttori, ecc.ecc. e mi sono trovato davanti ad un problema;

all'inizio del file Square.java ho:
Codice:
import java.lang.Math.*;

public class Square {
    ...
}
ma se uso una funzione qualsiasi della classe java.lang.Math (ad es. sqrt) mi dice:
Codice:
C:\java>javac MyProg.java
.\Square.java:19: cannot find symbol
symbol  : method sqrt(double)
location: class Square
        lato = sqrt(area);
               ^
1 error
grazie a chiunque mi aiuterà, e scusate per la domanda niubba
devi chiamare Math.sqrt() , non sqrt() e basta .

sqrt() è una funzione statica della classe Math, benvenuto nell' OOP
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 21:56   #3
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
devi chiamare Math.sqrt() , non sqrt() e basta .

sqrt() è una funzione statica della classe Math
con Math.sqrt() funziona, grazie

ma funzione statica vuol dire che ne viene creata una per tutte le istanze dell'oggetto? o quelle erano le variabili?
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
benvenuto nell' OOP
Non avevo visto il tappeto davanti alla porta >_>
AngeL) è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 22:01   #4
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da AngeL) Guarda i messaggi
con Math.sqrt() funziona, grazie

ma funzione statica vuol dire che ne viene creata una per tutte le istanze dell'oggetto? o quelle erano le variabili?
Una funzione statica è una funzione che è chiamabile semplicemente specificando il nome della classe senza dover instanziare un oggetto specifico di quella classe per poterla usare.

Come regola le funzioni statiche possono usare solo attributi (variabili ) locali o statici (attributi accessibili, come le funzioni statiche, senza dover instanziare la classe e esistenti in unica copia condivisa tra tutte le , eventuali, istanze della classe) .

Il metodo main() di una classe java tanto per essere precisi è definito come "public static" , quindi è un metodo statico che la JVM fa partire senza instanziare un oggetto specifico della classe che lo contiene.

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 22:04   #5
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
Quote:
Originariamente inviato da AnonimoVeneziano Guarda i messaggi
Una funzione statica è una funzione che è chiamabile semplicemente specificando il nome della classe senza dover instanziare un oggetto specifico di quella classe per poterla usare.

Come regola le funzioni statiche possono usare solo attributi (variabili ) locali o statici (attributi accessibili, come le funzioni statiche, senza dover instanziare la classe e esistenti in unica copia condivisa tra tutte le , eventuali, istanze della classe) .

Il metodo main() di una classe java tanto per essere precisi è definito come "public static" , quindi è un metodo statico che la JVM fa partire senza instanziare un oggetto specifico della classe che lo contiene.

Ciao
adesso ho capito! grazie mille per la spiegazione!
AngeL) è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 23:58   #6
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Per fare le cose un tantino + decenti se stai usando una versione di Java >= 5 allora puoi usare lo static import:
Codice:
import static java.lang.Math.*;

....

double r = sqrt(PI * 2);
io penso che sia una vera e propria manna dal cielo
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 07:34   #7
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
Per fare le cose un tantino + decenti se stai usando una versione di Java >= 5 allora puoi usare lo static import
cosa cambia?
comunque ho installato il jdk 6.0_01 ma in programmi\java ho anche il jre 6.0_01
AngeL) è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 08:35   #8
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
cambia che anzikè scrivere ogni volta Math.sqrt(), Math.cos(), Math.PI puoi scrivere semplicemente sqrt(), cos(), PI.
E se hai molte funzioni matematiche è MOLTO + comodo
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 08:59   #9
AngeL)
Senior Member
 
L'Avatar di AngeL)
 
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
cambia che anzikè scrivere ogni volta Math.sqrt(), Math.cos(), Math.PI puoi scrivere semplicemente sqrt(), cos(), PI.
E se hai molte funzioni matematiche è MOLTO + comodo
ok
grazie a tutti e due^^
AngeL) è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
165 società pubblicitarie fra Rus...
GIMP manda XCF in secondo piano: dopo 29...
Lexar NQ790 da 1 TB e 2 TB in offerta: i...
Anche Tesla Model Y Premium guadagna il ...
Google sta ostacolando l'installazione d...
Monitor gaming 4K 160Hz a 189,99€: quest...
Il watermark visibile di Google diventa ...
Mini PC in offerta su Amazon: 5 configur...
Ferrari Luce da record: la Chassis 0 ven...
Linux 7.2 è puntuale, ma Torvalds...
Meta brevetta occhiali che a cena ti chi...
Apple Pencil Pro scende a 109€ e version...
iPhone 17 Pro Max 512 GB: il top di gamm...
l modello di Apple Intelligence per la C...
SpaceX chiude l'acquisizione di Cursor: ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:35.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v