Q:

How Class/Static Methods get invoked

While reading The Ruby Programming Language I came to know that, class methods are invoked on an object which got the same name as class. 
I found objective-c also does a similar thing from a blog. Here Classes happens to be instances of meta-classes.
As another major Object Oriented language i would love to know how Java implements/achieve this. 
Edit
I appreciate the answers from everyone. But my question wasn't about how to invoke a class method. As many answers were answering that. Apologies if my question was not well framed or it gave you a wrong idea.

A:

In the Java language, static methods are invoked on the class instead of an object e.g. System.currentTimeMillis. So conceptually this is very similar to Ruby, ObjC, Smalltalk, etc.
Unlike Ruby and Objective C, there is no object instance that those methods get invoked upon: The Java bytecode has a special bytecode instruction that invokes the static method; this bytecode instruction does not use an object pointer from the stack:
INVOKESTATIC "java/lang/System" "currentTimeMillis" "()J"

When using reflection, this special handling of static methods is represented by the fact that you don't need to specify an object that the method is called upon. Instead, you can supply null as the target of the call.

