The only difference between a static and a non-static method is that a non-static method has a hidden "this" parameter passed to it that allows you to access all the non-static fields in the object.A static method does not get passed the hidden "this" parameter, and therefore does not have access to any of the object's non-static fields.