2016-05-28 5 views
1

Ich habe gerade versucht, das JGAP Framework mein Projekt zu implementieren und irgendwie über die folgende frage ich mich:org.jgap * gilt nicht für alles

Wenn ich import org.jgap.* Typ, die Klasse MaxFuction ist nicht irgendwie vorhanden, aber wenn ich import.org.jgap.impl.job.MaxFunction eintippe funktioniert es. Verstehe ich etwas falsch mit der *? Ich dachte, dass es dann alle Sub- "Dateien" beinhaltet, also sollte normalerweise auch MaxFunction enthalten sein, oder irre ich mich?

Antwort

1

eine * importieren importiert jede Klasse sofort in der Verpackung, es tut nicht recurse zu Subpackages. Sie könnten natürlich Import mit * aus dem Subpackages zu:

import.org.jgap.impl.job.*; 
import.org.jgap.*; 
+1

Okay, und es gibt keine Möglichkeit, das gesamte Paket rekursiv zu implementieren? – user5638730

+0

@ user5638730 Nein. Pakete in Java sind nicht wirklich hierarchisch, wie in [the tutorail] erklärt (https://docs.oracle.com/javase/tutorial/java/package/usepkgs.html) - scrollen Sie nach unten zum " Sichtbare Hierarchien von Paketen ". – Mureinik