public interface JavaFile extends JavaElement
EMPTY_ARRAY| Modifier and Type | Method and Description | 
|---|---|
JavaClass | 
getClass(java.lang.String name)  | 
java.util.Collection<JavaClass> | 
getClasses()  | 
JavaPackage | 
getPackage()  | 
java.lang.String | 
getPackageName()  | 
JavaClass | 
getPrimaryClass()
Here, "primary class" means the class that bears the same name as the compilation unit (file). 
 | 
java.net.URL | 
getURL()  | 
getElementKind, getFile, getModifiers, getOwner, getSourceElement, isDeprecated, isFinal, isHidden, isSourceElement, isSynthetic, printCompiledInfoJavaPackage getPackage()
java.lang.String getPackageName()
java.util.Collection<JavaClass> getClasses()
JavaClass getClass(java.lang.String name)
JavaClass getPrimaryClass()
The term "primary class" is not actually used in any reference I tried: JLS, JPL, or Effective Java. It does see some usage on the web. The term "main class" could be confused with the run-time class whose "main(...)" method is being run.
java.net.URL getURL()