static变量从属于类,属于类成员,不属于成员变量,不能通过对象调用,可通过类名.变量名调用(经过测试发现可以通过对象调用,不过会有警告,所以最好还是用类名调用,可以应用于所有对象),内存中直接写在方法区内static变量中,不再方法区外的对象模型中。
静态方法不能调用非静态成员和方法,非静态方法可以调用静态的与非静态的方法(因为代码运行时先部署类,运行到初始化对象时才初始化对象,所以类成员生成时对象的成员变量还未生成,故不能调用)。
本文深入解析Java中的static变量特性:归属类而非实例,调用方式及限制,内存存储位置;并探讨静态方法与非静态方法之间的调用规则。
static变量从属于类,属于类成员,不属于成员变量,不能通过对象调用,可通过类名.变量名调用(经过测试发现可以通过对象调用,不过会有警告,所以最好还是用类名调用,可以应用于所有对象),内存中直接写在方法区内static变量中,不再方法区外的对象模型中。
静态方法不能调用非静态成员和方法,非静态方法可以调用静态的与非静态的方法(因为代码运行时先部署类,运行到初始化对象时才初始化对象,所以类成员生成时对象的成员变量还未生成,故不能调用)。

被折叠的 条评论
为什么被折叠?