[英]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.