This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
Hi I'm new to Java and need some help with compiling my classes. I have 3 public classes in 3 separate .java files. I need to somehow compile these classes together, so that they are visible to each other as one class creates an object from one of the other classes. Do I need to put them all in a package? Please can you help Thanks Yen
Not neccessarily. If they are in the same directory, without a package statement in any of them (default package), they are visible to each other.
Bosun (SCJP, SCWCD)
So much trouble in the world -- Bob Marley
Joined: Aug 14, 2001
Bosun Thanks for your reply Normally I would compile a class using the following syntax: javac class1.java But when I have 3 separate files class1.java, class2.java, class3.java in the same directory which need to be connected- what syntax do I use. Thanks Yen-yei
Bosun is right: without a package statement, the compiler will set the classes to use the default package, grouping the classes in the same directory into the package. As for the compiler needing to know about the type information, javac is smart enough to find the class. I read this here:
[If the search for a class] produces a source file but no class file: javac compiles the source file and uses the resulting class file.
Finally, to make it easier for yourself, you should use a wildcard to compile your source files, like javac *.java