繁体   English   中英

Java public static main()

[英]Java public static main()

我正在学习Java,有一件事我不明白..

在主程序中:

public static void main(String[] args) {

我想我非常理解这一点,用我所知的语言,我认为它会是这样的:

public static function main(args:String):void {

我不明白的第一件事是String []中的2个括号[]是什么? 另外我想知道的第二件事是,如果这是第一个被调用的函数(并且被程序之外的东西调用),那么实际上是否会传递参数?

谢谢。

main的参数是从命令行传入Java的选项,作为数组传入。 例如:

java MyProgram foo bar zoo

有三个参数,即foo,bar和zoo

foo是args [0],bar是args [1],动物园是args [2]。

括号表示阵列 例如String[]是一个字符串数组。 main()函数是程序中调用的第一个函数。 它由JVM调用。

String[] args中的值是在命令行上传递的参数。

如果你调用一个Java程序(主类: FooBar包中的foo.bar ):

java foo.bar.FooBar foo bar buz

那么, args会喜欢你是这样构建的:

String[] args = new String[3];
args[0] = "foo";
args[1] = "bar";
args[2] = "buz";

这可能值得一读: 仔细研究“Hello World”应用程序

括号表示它是一个字符串数组。 并且可以有参数,例如,当您启动应用程序时从命令行。

这意味着你将得到一个字符串数组。 它们可以通过命令行传递

[]代表数组,例如String x =“some value”; String [] x = {“value 1”,“value 2”,“value 3”};

所以在第二种情况下,x [0]给出“值1”。 它基本上是一个字符串数组。 第二部分是谁将调用该函数? 那么这个方法签名就是入口签名,每当你尝试用java程序调用一个类时,它都会搜索这个函数来开始执行; 如果它没有找到它; 它只会发出一个错误。

谁将vales传递给String []数组? java someprogram value1 value2 value3

将自动使用相应的三个值填充数组。 因此,从命令提示符运行时,基本上会填充值,并将值作为参数传递给调用。

希望能搞清楚

暂无
暂无

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

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