Beuase all the methods are the same, there's just one copy in memory. That's loaded when the class is loaded ie sometime before you first use it. The same is true of static variables.
Memory for instances of classes is created when the instance is created - that's a few bytes for the instance, plus enough for each of the instance variables.
Exactly how much memory. and exactly how it is allocated is private to each implementation of the Java Virtual Machine (JVM).