Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
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


Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
SpaceX ha confermato che Flight 14 sar&a...
Googlebook pronto al debutto: Google apr...
Guida all'acquisto: quale lavapavimenti ...
Google Maps su Android Auto introduce fi...
AMD Ryzen 5 5500F: fino al 16% di presta...
L'ecosistema partner di Microsoft cresce...
Oracle registra un boom nella divisione ...
Amazon Prime Video sfida TikTok con le n...
L'uscita di Rayman Legends Retold &egrav...
Dazio UE sui pacchi extra UE, in Italia ...
La nuova lavatrice smart di Xiaomi ha tr...
Hai una PSP nel cassetto? Questo nuovo p...
Oracle presenta Java 27 con diverse novi...
Il microscopio dell'EPFL vede più...
Volvo avvia la produzione dei nuovi cami...
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: 23:03.


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