I suppose to answer your question you really have to define what you mean by a
If you mean a stand-alone Java application, then no. The JVM looks for a method public static void main(String) as an entry to the application. Failing to find that, it will throw an exception and terminate.
However, there are several other types of applications that do not use the main() method. Web-applications and applets are a couple that come to mind. However, they have special JVMs that allow them to run. In the first case, web applications run in a Java container we commonly call a server. In the second case the application runs in a browser plug-in.
Shrikanth - just out of interest, why did you want to know this ? This question gets asked a lot, but it's always seemed to me to be like going into a car showroom and asking the salesman - if I remove all the wheels from the car will I still be able to drive it around ? Cars are designed to need wheels, Java programs are designed to need a main method - why worry about whether they will work without them ?
I saw that but thought it was more about why you can do it in Java 6 and not in Java 7 rather than whether it was actually possible. In fact it was started by the same person who reawakened this zombie.
Not sure what you mean by "concept", but as Paul implies, static blocks continue to be available. And Jesper already mentioned why this strange idiom no longer works in Java 7. (Arguably it shouldn't ever have worked, but that's a different subject.)