To add to what Belisarius said,
you don't worry about instantiation. The fact that all your classes are within a project or project means that they have visibility to each other.
There are a few different types of class visibility, as defined by a few access modifiers that are present in Java.
The access modifiers are as follows:
public,
private,
protected, and on modifier at all (which implies package level visibility).
This is a great read on access to classes:
Controlling Access to Members of a Class (The Java™ Tutorials > Learning the Java Language > Classes and Objects)
Split up your files, and the JVM, as one of the services it provides, will be able to take care of your classpath resolution, especially when managed by netbeans which will take care of your compilation and execution.
Don't be afraid to split up your class files. It makes it easier to read and manage for yourself and for other people!