String args[] 和 String[] args 有什么区别

时间:2022-01-14 10:56:32

String args[] 和 String[] args 有什么区别

public static void main(String args[]) 或 public static void main(String[] args)

这是java程序的入口地址,java虚拟机运行程序的时候首先找的就是main方法.跟C语言里面的main()函数的作用是一样的.只有有main()方法的java程序才能够被java虚拟机欲行,可理解为规定的格式。

对于里面的参数及修饰符
public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样java虚拟机就可以找到main()方法,从而来运行javac程序
static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候main()方法也随着加载到内存中去
void:main()方法是不需要返回值的 main:约定俗成,规定的 String[] args:从控制台接收参数

String args[] 和 String[] args 有什么区别

其实没什么区别的;当初我也是这样的疑问,呵呵;

非要说区别就看下面:

执行效果上没有不同, 但在语法意义上略有不同.

比如, String与String[], 前者叫字符串类型而后者叫字符串数组类型.

String args[]单从类型上来讲属于字符串类型, 而从变量本身来讲是一个数组类型, 因此组合起来说明此变量为一个字符串类型的数组, 也就是说数组中的所有元素都为String类型.

String[] args单从类型上来讲属于字符串数组类型, 而从变量本身来讲就是一个单纯的引用变量, 因此这种方式可以更明显地体现出是否为数组这一点. 因为从类型上就可以直接看出变量为一数组类型引用.

正如第一句话所说的那样, 单单两句是比较不出什么不同的, 但如果你这样写.  String args[], argt;  String[] args, argt;  这就有很显示的差异了. 在第一句中args是字符串数组类型, 而argt则就是字符串变量. 在第二句中args与argt都是字符串数组类型.

那就是:string[] args,声明一个String数组,名字叫args. string args[],声明一个叫args的数组,类型是String.
其实功能作用是完全一样的,两种写法都可以! 
这是数组的两种写法, 大多数程序员喜欢使用String[] args这种风格的写法,因为它把元素类型 String[] 与变量名 清晰的分开了。  不过个人习惯于String[] args

================== End