Avatar billede cyper-master Nybegynder
30. oktober 2008 - 21:28 Der er 5 kommentarer og
1 løsning

Packages links? call class fra anden packages?

Hey there

kan jeg i java med netbeans lave flere packages i et projekt og så hente ting fra dem?

f.eks. hvis jeg nu har en packages der hedder gym, og en der hedder sts.

kan jeg så godt i min main kalde class fra packages gym, og eller packages sts?

( dette er fordi jeg gerne vil ha lave en slags overordt class for de forskellige classe, for ellers bliver det meget rodet)

Ihverfald. tak for jeres tid. og undskyld min ordblindhed,.
Avatar billede arne_v Ekspert
30. oktober 2008 - 23:39 #1
Du kan både extende og bruge en klasse fra en anden pakke.
Avatar billede cyper-master Nybegynder
30. oktober 2008 - 23:43 #2
lækkert. hvis du har en guid et sted.
så kan du smide den i et svar og pointsne er dine.
Avatar billede arne_v Ekspert
31. oktober 2008 - 02:19 #3
Jeg kan ikke lige umiddelbart komme i tanke om en god guide til packages.

Så her er min egen.

Hvis projekt rod er C:\mitprojekt så vil C1.java med indhold:

package p1;

public class C1 {
}

skulle ligge i directory C:\mitprojekt\p1 og C2.java med indhold:

package p2;

public class C2 {
}

skulle ligge i directory C:\mitprojekt\p2 - d.v.s. at package og directpry struktur
følges ad.

Hvis du bruger en IDE som Eclipse eller Netbeans så sker det helt automatisk.

Når du compiler med javac kommandoen eller kører program med java kommandoen, så
skal du angive classpath til roden altså:

javac -classpath C:\mitprojekt ...
java -classpath C:\mitprojekt ...

Så søger de efter klasserne ved at tilføje pakke navnene under roden.

Main class skal angives med pakke navn d.v.s. at:

java -classpath C:\mitprojekt p1.C1

vil køre C:\mitprojekt\p1\C2.class - igen sørger en IDE for det automatisk.

Hvis klasse p1.C1 skal bruge klasse p2.C2 kan det gøres på 3 måder:

A) brug fuld navn

p2.C2 var = new p2.C2();

B) brug af wildcard import

import p2.*;
...
C2 var = new C2();

C) specifik import

import p2.C2;
...
C2 var = new C2();

Måde C anses som værende den pæneste omend B ofte bruges til små programmer.

Bemærk at en import ikke hiver noget kode ind - den fortæller udelukkende compileren
at du i .java filen vil bruge det korte navn for en klasse.

Uanset hvad bruger java din classpath C:\mitprojekt og fuldt navn p2.C2 til
at finde C:\mitprojekt\p2\C2.class !
Avatar billede arne_v Ekspert
31. oktober 2008 - 02:21 #5
og et svar
Avatar billede cyper-master Nybegynder
31. oktober 2008 - 10:05 #6
det var sq fornæmt.

de points er velfortjent.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester