Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 29-07-2006, 15:57   #1
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
[JAVA]creare proprio package

Ho tante classi, e vorrei ordinarle un po', quindi vorrei creare vari package.
Come si fa? Ho anche un libro ma non ho capito...

Vorrei avere le classi raggiugibili così:
import mionome.nomeprogetto.tipodiclasse.*;

Quindi ad esempio se ho una classe che mi svolge un servizio di rete vorrei renderla raggiungibile così:
import mioNome.nomeProg.NetWorking.*;

Cosa devo fare?
Se qualcuno mi spiega passo per passo come fare...considerando anche che poi il progetto deve essere trasportabile, cioè sarebbe meglio se fosse compilabile anche su di un'altra macchina...se possibile.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 16:31   #2
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Se per esempio metto le mie classi che svolgono servisi di rete nella cartella:
C:/progettoDIProva/mioNome/nomeProg/NetWorking

Come faccio a raggiungerla con un import?
Devo modificare anche il classpath?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 16:51   #3
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
prima cosa, ti consiglierei di usare eclipse, o un altro IDE che ti facilita la gestione dei progetti, cmq, innannzitutto devi creare la struttura dei package che desideri sul file system, esempio, se vuoi il package mionome.nomeprogetto.tipodiclasse devi creare una cartella mionome, in cui è presente una sottocartelle nomeprogetto, e così via..inoltre il classpath deve contenere il percorso della cartella contenente mionome, infine nelle classi che andrai a posizionare in "mionome.nomeprogetto.tipodiclasse", dovrai scrivere all'inizio:

Codice:
package mionome.nomeprogetto.tipodiclasse;
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 17:02   #4
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Grazie mille chiarissimo, ci sono riuscito!
Siccome si tratta di un progetto di esame, è probabile (non è sicuro) che il prof voglia compilare lui stesso i file java, in questo caso io dovrei cambiare il classpath del pc del prof?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 17:12   #5
cisc
Senior Member
 
L'Avatar di cisc
 
Iscritto dal: Nov 2002
Città: Cosenza --> Roma
Messaggi: 853
io in genere ho sempre portato il jar già compilato, più i sorgenti a parte, ovviamente se il prof vuole compilarselo il classpath deve essere corretto....
__________________
GNU MyServer Wants YOU!!
We live thinking we will never die. We die thinking we had never lived. Jason Becker
cisc è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 17:59   #6
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Altra cosa, come faccio a fare in modo che se importo un mio package automaticamente importo anche package della sun?

Ad esempio ho un package networking che contiene classi che fanno uso di java.net.*;
java.io.*;
java,utili.*;

c'è un modo per far si kè se importo il mio package importo anche quelli?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 18:11   #7
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Comunque ho cantato vittoria troppo presto, non dava errori di compilazione perchè i file java li compilavo nella cartella che contiene anche mionome, se il file si trova da un'altra parte non riesce a trovare il package, quindi significa che non ho settato bene il classpath.

Premetto che in variabili d'ambiente io NON ho nessun CLASSPATH, l'ho creato ma non è cambiato nulla, come faccio a spaere se va bene quello che ho fatto?
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 21:33   #8
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
utilizzo il JCreator, ho settato tutto e infatti mi trova i package, ma quando compilo una classe che contiene un oggetto di una classe all'interno del package mi dice che non è accessibile, tipo:
MasterServer.java
Codice:
import mioprog.networking.*;

public class MasterServer {
	
	public static void main(String[] args){
		GestioneSocket gs;
	}
}
GestioneSocket è una classe del package mioprog.networking, il quale viene correttamente trovato durante la compilazione, ma salta fuori però l'errore "cannot access GestioneSocket". Sembra un errore di visibilità ma tutte le classi nei package hanno visibilià pubblica...
Perchè?

Preciso che i package sono in una cartella del tipo: C:\mionome\mioprog\netwoking
e che nel CLASSPATH ho messo C:\mionome
mentre invece il file MasterServer.java si trova in un altra cartella, quella che JCreator utilizza per i pregetti.
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 21:44   #9
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Questo è l'output completo dell'errore:
Codice:
C:\Programmi\Xinox Software\JCreatorV3LE\MyProjects\MasterServer\src\MasterServer.java:14: cannot access GestioneSocket
bad class file: C:\mionome\GestioneSocket.java
file does not contain class GestioneSocket
Please remove or make sure it appears in the correct subdirectory of the classpath.
                GestioneSocket gs;
                ^
1 error

Process completed.
La cartella c:/mionome contiene la cartella dei package...
Sembra che non interpreti l'import dei package, in realtà il file class di GestioneSocket è in C:\mionome\nomeprog\networking e infatti ho messo l'import giusto...bho non capisco...
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2006, 21:48   #10
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Non ci credo...in pratica nella cartella C:\mionome c'era anche il file GestioneSocket.java e si vede che JCreator incontrando prima quello si fermava a quello nonostante fosse un java e non un class...certo che chi ha fatto l'algoritmo per compilare poteva anche guardare le estensioni dei file...
MEMon è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
2 microonde Samsung in super offerta, co...
I 4 migliori portatili su Amazon: c'&egr...
Nutanix accelera la migrazione da VMware...
Nutanix apre ai neocloud: piattaforma mu...
Nutanix amplia la piattaforma cloud e st...
Le fotografie dell'eclissi solare e dell...
Oracle AI Database si potenzia con nuove...
Russia offline: blackout internet mobile...
Gemini, Google investe 30 milioni per la...
Roborock Qrevo Edge S5A: 17.000 Pa, acqu...
Resa pubblica la foto della ''Terra che ...
Il robot che ha piegato 200 scatole di f...
SteelSeries Aerox 3 Wireless Gen 2: nuov...
"Quasi sociopatico": Sam Altma...
Star Wars Eclipse in difficoltà: ...
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: 06:24.


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