Does every program in Java require a class?

后端 未结 6 1192
臣服心动
臣服心动 2020-12-16 02:19

Every Java program requires the presence of at least one class.

Is the above statement always true ?

6条回答
  •  爱一瞬间的悲伤
    2020-12-16 03:00

    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.

提交回复
热议问题