Java: Ha en mapphierarki som representerar Klasshierarki?

Trädvy Permalänk
Medlem
Plats
Sthlm
Registrerad
Nov 2005

Java: Ha en mapphierarki som representerar Klasshierarki?

Hej

Jag försöker få till ett logiskt upplägg av mina Javaklasser.
M.a.o. vill jag att ordningen på klasserna i mapparna ska spegla deras Superklass/Subklass relationer.

Jag får inte till det... t ex i en Subklass måste man ju importera Superklassen:

import klasser.superklass; public class subklass extends superklass ...

...och detta medför att superklassen måste Under subklassen i mapphierarkin:

D:JavaDok\subklass.class
D:JavaDok\klasser\superklass.class

Vilket blir total katastrof om man ska lägga till en subsubklass. =/

Jag vill alltså att det ska se ut såhär:

D:JavaDok\klasser\superklass1.class

D:JavaDok\klasser\superklass1\subklass1.class

D:JavaDok\klasser\superklass1\subklass2.class

D:JavaDok\klasser\superklass1\subklass2\subsubklass1.class
...
etc

Jag har tittat på SunMS's tutorials men inte hittat denna konkreta situation.

Trädvy Permalänk
Medlem
Plats
Linköping
Registrerad
Mar 2008

Re: Java: Ha en mapphierarki som representerar Klasshierarki?

Citat:

Ursprungligen inskrivet av Klockan
Jag försöker få till ett logiskt upplägg av mina Javaklasser.
M.a.o. vill jag att ordningen på klasserna i mapparna ska spegla deras Superklass/Subklass relationer.

Varför vill du ha det på det viset? Jag tycker det verkar synnerligen överarbetat och onödigt?

Trädvy Permalänk
Medlem
Plats
Falun
Registrerad
Dec 2003
Citat:

Ursprungligen inskrivet av Klockan
Hej

Jag försöker få till ett logiskt upplägg av mina Javaklasser.
M.a.o. vill jag att ordningen på klasserna i mapparna ska spegla deras Superklass/Subklass relationer.

Jag får inte till det... t ex i en Subklass måste man ju importera Superklassen:

import klasser.superklass; public class subklass extends superklass ...

...och detta medför att superklassen måste Under subklassen i mapphierarkin:

D:JavaDok\subklass.class
D:JavaDok\klasser\superklass.class

Vilket blir total katastrof om man ska lägga till en subsubklass. =/

Jag vill alltså att det ska se ut såhär:

D:JavaDok\klasser\superklass1.class

D:JavaDok\klasser\superklass1\subklass1.class

D:JavaDok\klasser\superklass1\subklass2.class

D:JavaDok\klasser\superklass1\subklass2\subsubklass1.class
...
etc

Jag har tittat på SunMS's tutorials men inte hittat denna konkreta situation.

Logiskt upplägg av klasserna i filsystemet är väldigt onödigt. Att försöka ha det begripligt på den nivån är overkill. Finns ingen systemarkitekt som ser över en applikation baserad på filerna/klassernas logiska placering i filsystemet. Inre klasser och klasser inom samma "namespace" syns ändå inte i filsystemet. Det blir även mer jobb för dig om du måste skapa en ny mapp för varje superklass. Rent ut sagt så skulle jag inte säga att det är best-practice eller ens code-practice.

Använd klassdiagram för att illustrera relationera.

Hur som helst så önskar jag dig lycka till. Du är ett kontrollfreak åt rätt håll i alla fall, överskådlighet.

ηλί, ηλί, λαμά σαβαχθανί!?

Trädvy Permalänk
Medlem
Plats
Sthlm
Registrerad
Nov 2005

Meh, tycker det hade varit bra men blir lite onödig arbete antar jag.

Trädvy Permalänk
Medlem
Plats
Solna
Registrerad
Mar 2002

Nej, nej, nej. Hierarkin du pratar om i filsystemet är paketstrukturen.

System.out.print(madness ? this.is.SPARTA : "");

Trädvy Permalänk
Hedersmedlem
Plats
Stockholm
Registrerad
Dec 2002

Det går, om man sätter CLASSPATH till "ursprungskatalogen".

Vim
Kinesis Classic Contoured (svart), Svorak (A5)
Medlem i signaturgruppen Vimzealoter.