Why only one Class is public in one file? Explain in
details. Thanks in Advance.
Answer Posted / slvganesh.java@gmail.com
A file may have more than one class. Each class may or may
not have main method. But only one main () for a class.
Here's some example: Just Copy it and Run..
/**
* Save this file as Class1.java, bcoz i'm using a class
* Class1 which is public.
*/
public class Class1 { // Note this line
/* This Class is public. So your file name should be the
same name.
*/
public static void main (String arg[]) {
System.out.println (" This is from Class1.. ");
} // Main
} // Class1
class Class2 { // Note this line
/* This class is not public. so it doesn't matter
your file name.
*/
public static void main (String arg[]) {
System.out.println (" This from Class2..");
}
}
class Class3 {
/* This class Calls the main() in Class1.
*/
static public void main (String arg[]) {
System.out.println (" This is from Class3..");
// Creating obj to Class1
Class1 c1 = new Class1 ();
c1.main (arg); //Main must have one arg as String[] type
}
}
Compile : javac Class1.java
After your compiled your can see three class files,
1. Class1.class
2. Class2.class
3. Class3.class
This is bcoz, java compiler converts the classes into files,
which has the bytecode instructions for that class.
Now you can execute the classes as you want.
Run : java Class1 (or)
java Class2 (or)
java Class3
After executing Class3 you may see the
Output :
This is from Class3..
This is from Class1..
Please understand, once you compiled your .java file, the
classes on that file will converted into .class (bytecodes).
Java interpreter looks only the .class.
In other words, java interpreter understand only the bytecodes.
Thanx for reading this..
Ganesh Slv.
Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What do bitwise operators do?
What are the differences between throw and throws?
Can we override the static method?
What are methods?
How can you generate random numbers in java?
What is the purpose of the main method?
Which one of the following suits the description of a string better: derived or primitive?
What are the java ide’s?
Why wait(),notify(),notifyAll() methods defined in Object class althought we are using in only threads.
What are the different types of garbage collectors in java?
What is application tier?
Can we have two methods in a class with the same name?
Java Compiler is stored in JDK, JRE or JVM?
What is unmodifiable collection in java?
What are the 3 types of loops in java?