Every Java program requires the presence of at least one class.
Is the above statement always true ?
From the JVM's point of view; yes. From a programmers view point, it can be a Class or an Enum.
public enum AAA {
AAA;
public static void main(final String[] args) {
System.out.println("H");
}
}
EDIT: Even if you have a class with empty main method, there are a lot of core classes which work behind the scene to just run the "empty" class of yours. A list of those classes (around 200 from the java.*
package) can be viewed by setting the -verbose:class
JVM parameter.
Yes. In Java you always need one class with the function main to have the JRE run it.
yes , you need minimum one class.
Yes, you need at least one class to have a program, but no, you do not need any methods (contrary to some other answers).
The reason you need a class is because in Java, all code is inside classes. So to have any code, you need a class. However, code doesn't necessarily need to be in a method. It can also be in initializers. So, here is a complete Java program with no methods:
class LookMaNoMethods {
static {
System.out.println("Hello, world!");
System.exit(0);
}
}
And that gives...
$ javac LookMaNoMethods.java
$ java LookMaNoMethods
Hello, world!
$
EDIT : From Java 7 the above code with just static block and no main method does not produce any output. Main method is now compulsory. The code with no main method compiles successfully though.
JAVA required at least one class in a program because at the time of execution of Java programs we needed to provide the name of a class which contains the main () method.
so, it is compulsory to provide at least one class name to Java programs.
ex--->`
class Test
{
public static void main(String [] args)
{
System.out.println("Hello World");
}
}
so, javac _____ ("Here we have to give the name of java program in which we save")
java ______ ("Provide the name of a class which contain the main() method")
-----> according to our program
javac Hello (here I save the program name by Hello.java)
java Test (because Test class contains main() method)
Thank You
A program requires an entry point. An entry point has to be a method. In Java, every method must be contained in a class.
That would imply that every program must have a at least one class.