Found on devx.com, allways worth a look.
Normally, you need a main method in a Java class if you want to run that class from the command line. However, there is a little trick that allows you to run one without a main method:
class NoMainMethod
{
static
{
System.out.println("Look ma! no main method");
System.exit(0);
}
}
The reason this works is that static initialization blocks get executed as soon as the class is loaded—even before the main method is called. As soon as the block exits, it will look for the main method. When it doesn't find it, it throws an exception—so the statement exits the program before the exception is thrown.
Normally, you need a main method in a Java class if you want to run that class from the command line. However, there is a little trick that allows you to run one without a main method:
class NoMainMethod
{
static
{
System.out.println("Look ma! no main method");
System.exit(0);
}
}
The reason this works is that static initialization blocks get executed as soon as the class is loaded—even before the main method is called. As soon as the block exits, it will look for the main method. When it doesn't find it, it throws an exception—so the statement exits the program before the exception is thrown.
noch kein Kommentar - Kommentar verfassen
Fr, 08.03.2019, 09:39