A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

JAVA的堆和栈分别存什么类型的,还有函数前加static作用?必须加还是有什么特定条件的?

9 个回复

正序浏览
                          了解下
回复 使用道具 举报
栈是用来存放局部变量的,堆是用来存放成员变量的,像数组和对象都是存放在堆中的。函数前加了static,就多了一个调用方式,除了可以被对象调用外,还可以直接被类名调用。
回复 使用道具 举报
迦南 发表于 2014-8-16 00:28
java中在内存中可以分为3大部分栈,堆,静态区,方法作为对象的一部分存储在堆中,堆中还包含池(用来存储S ...

静态中不可以写this,super的原理是?
回复 使用道具 举报
堆存储的是数组和对象,凡是new建立的都存储在堆中。。栈存储的是局部变量。。static代表着静态,是共享的数据。
回复 使用道具 举报
本帖最后由 nadax 于 2014-8-16 00:43 编辑

3楼我问的就是简单的啊,不懂就要问有错吗?你在这水回复有咩意思,把你理解说下能死啊。
回复 使用道具 举报
java中在内存中可以分为3大部分栈,堆,静态区,方法作为对象的一部分存储在堆中,堆中还包含池(用来存储String类型)  
static是静态修饰符,如果是在main方法所在的类中定义的函数加上static,main方法中可以直接调用此方法。
static的特点有:随着类的加载而加载,优先着对象存在,被所有对象所共享,可以直接被类名调用
注意:静态方法只能访问静态成员
静态方法中不可以写this,super关键字
回复 使用道具 举报
一步一步来,都是由简入深,你简单的都没理解了,更深层次的就更不用说了
回复 使用道具 举报
static是“静态”的标识符,用这个标识的成员变量或者函数在没有创建对象时就能直接调用
回复 使用道具 举报
静态是随着类的加载就加载了  而非静态是要创建对象或者调用方法 那些内容才加载  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马