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
Convert a BST into a DLL and DLL to BST in place.
What is volatile keyword in java
How do you make an arraylist empty in java?
What are the basic interfaces of java collections framework?
Is it possible to use Semaphore/ Mutex in an Interrupt Handler?
What are the differences between this and super keyword?
State one difference between a template class and class template.
Explain the scope of a variable.
Does treeset use compareto?
How is a variable stored in memory?
What are the 8 primitive data types in java?
What are the differences between checked exception and unchecked exception?
What are the differences between Java 1.0 and Java 2.0?
Can we make the abstract methods static in java?
Explain the access modifiers for a class, method and variables?