1个回答
展开全部
对于一般的类(非静态)来说,在定义类但还未创建对象的时候,类的所有成员(包括变量和函数)都占用着内存空间(准确地说占用着指令代码区),但不占用堆栈空间
而创建对象的时候,会根据对象的类型占用堆栈的空间(用传统模式创建对象会占用栈空间,用引用+new模式创建对象会占用堆空间,同时引用会保存在栈里)
对于静态(static)类来说,静态类是不能实例化创建对象的,所有的成员都是静态成员,也需要占用内存空间,但不在堆栈里,而是在内存的静态/全局区(这个区域用于存放所有的全局成员和静态成员)
而创建对象的时候,会根据对象的类型占用堆栈的空间(用传统模式创建对象会占用栈空间,用引用+new模式创建对象会占用堆空间,同时引用会保存在栈里)
对于静态(static)类来说,静态类是不能实例化创建对象的,所有的成员都是静态成员,也需要占用内存空间,但不在堆栈里,而是在内存的静态/全局区(这个区域用于存放所有的全局成员和静态成员)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询