繁体   English   中英

主命令行参数是否存储在堆栈存储器或堆存储器中?

[英]Are main command line args stored in stack memory or heap memory?

这可能是一个愚蠢的问题...

看一下大学通常是如何绘制JVM堆栈内存和堆内存的,它们通常显示带有被调用方法,它们中定义的变量和参数(堆栈内存)以及任何已分配对象(堆内存)的调用堆栈。

以一个简单的hello world示例为例:

public class Program {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

他们总是在图形中省略静态主参数( String[] args )。 是否有一个特殊的规则或参数用于存放args,而这些规则或位置与普通的堆栈内存参数不同?

无法在Google中找到结果,我不得不假设没有特殊的规则/例外,我应该在堆栈中有一个“ args”变量,该变量指向包含命令行参数的堆分配数组,我错了吗?

命令行参数存储在String -array中。 所有数组都存储在堆中 因此,命令行参数存储在堆中。

我假设您的主管(如您在评论中建议的那样)为了清楚而省略了他们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM