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 is <> used for in java?
Can there be an abstract method without an abstract class?
Does java support function overloading, pointers, structures, unions or linked lists?
What are advantages and disadvantages of OOPs?
Given a singly linked list, determine whether it contains a loop or not without using temporary space?
what are abstract functions?
How to sort an array from smallest to largest java?
Is there any limitation of using inheritance?
What is primitive data type in java?
When do you call copy constructor?
How use .contains in java?
what is difference betweem home interface and remote interface?
Mention some features of java?
Can we create object of static class?
Difference between nested and inner classes ?