1 package com.jdk7.chapter1;
2
3 /**
4 * 命令行程序
5 * @author celineluo
6 *
7 */
8 public class CommandArgs {
9 /**
10 * 调用系统错误方法打印错误信息
11 * 调用exit()关闭java虚拟机,0表示正常退出应用程序,其他值表示异常退出应用程序
12 * 是否是先退出应用程序,再关闭java虚拟机??
13 * @param err
14 */
15 public static void error(String err){
16 System.err.println(err);
17 System.exit(1);
//异常退出
18 }
19
20 public static void main(String[] args) {
//命令行的参数由main函数的String[]接收
21 String usageMsg = "UsageMsg: CommandArgs [options]\n"
22 +"where options are:\n"
23 +"-help 文档帮助信息\n"
24 +"-n <name> 参数名称\n"
25 +"-v <value> 参数值\n"
;
26 String name =
null;
27 String value =
null;
28 for(
int i=0;i<args.length;i++
){
29 if(args[i].equals("-n"
)){
30 if((i+1)==
args.length){
31 error("Error:-n需要参数值."
);
32 }
else{
33 name = args[++
i];
34 }
35 }
else if(args[i].equals("-v"
)){
36 if((i+1)==
args.length){
37 error("Error:-v需要参数值."
);
38 }
else{
39 value = args[++
i];
40 }
41 }
else if(args[i].equalsIgnoreCase("-help"
)){
42 System.out.println(usageMsg);
43 System.exit(0
);
44 }
else{
45 error("支持的参数不能为: "+
args[i]);
46 }
47 }
48 System.out.println("name: "+name+"; value: "+
value);
49 }
50 }
在类变量方法中如果要调用外部的变量或者方法,则只能调用外部的类变量和类变量方法,如上main()方法中只能调用static类型的
error()方法
转载于:https://www.cnblogs.com/celine/p/8242415.html