Java基础总结-内存与变量

来源:互联网 发布:机床的重要性 知乎 编辑:程序博客网 时间:2024/06/07 13:05

变量分为成员变量 和 局部变量

成员变量:出现类体中,方法体外

局部变量:出现在方法体中


内存分为四个区:stack segment、heap segment、data segment、code segment

stack 区 存放 函数参数和局部变量

heap 区存放对象  (new出来的东西)

data  区存放 static 的变量或者字符串常量

code  区存放类中的方法; (存放写的代码)


静态方法不能访问非静态方法和变量

那为什么需要把main方法定义成static方法:如果不是static,则调用main方法,必须要有一个对象去调用

main方法是程序的入口,在此入口之前不会产生任何对象,所以如果main方法是非static的成员方法,jvm是无法调用的,就进不了入口,那么程序也无法运行。而static的main方法可以不需要产生对象而调用