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
Which sorting algorithm is in place?
How do generics work in java?
Explain about main thread in java?
How many functional interfaces does java 8 have?
What are the types of exceptions?
Can we modify the throws clause of the superclass method while overriding it in the subclass?
Explain the JDB in depth & command line.
Why java strings are immutable in nature?
What is casting in java programming?
What is garbage collection? Can it be forced to run?
Is c better than java?
What is data string?
What is a control variable example?
how to write a program for sending mails between client and server
What are synchronized blocks in java?