Methods are loaded into memory before any instance created, so if you created a static method then this method will just be like any instance method, but the JVM will give you access to it before any instantiation of the object.
therefore the static methods have no effect on memory, its effect on memory just like the effect of access modifier.
You don't load methods, but the class. Each method lives in the class, as you can see from descriptions of classes (eg the BCEL manual). Each instance method has an additional argument for the location of the object it is called on. So all the methods are loaded inside the class; instance methods are not accessible until there is an instance to call them on. So all methods are put into memory as soon as the class is mentioned, even if you can't call them until there is an instance.
Static methods, however, are accessible from the name of the class as soon as the class file is loaded, which means as soon as the class name is mentioned in your code.