0

我想问别人简单的问题,但不是我——因为我是初学者。在“public JavaApplication6()”下将参数从“main”传递给变量“server”时我有一点问题简单的代码说清楚:

public final class JavaApplication6 {
String server;
    public static void main(String[] args) throws IOException {
    }
    public  JavaApplication6() {
        server=main(args[0]);  ??                            //here is the problem - how to pass ?
    }
}

例如,如果我在 cmd 下使用参数“java JavaApplication6 someargument”运行此应用程序,我想将字符串 someargument 分配给变量“server”,因此它将是:server==someargument,然后例如使用 System.out.println(server ) 显示字符串'someargument'。

先感谢您

4

4 回答 4

1

您从命令行将参数传递给 main。不在构造函数中。构造函数用于初始化类变量。

public final class JavaApplication6 {
    String server;

    //public constructor
    public  JavaApplication6(String s) {
        server=s;
    }
    //here is where the execution begins.
    public static void main(String[] args) throws IOException {
    //create a object of your class 

        JavaApplication6 app = new JavaApplication6(/*here is where you pass the arguments to the constructor*/ args[0]);


    }

}
于 2013-04-12T12:46:04.903 回答
0
public final class JavaApplication6 
{
  String server;

  public static void main(String[] args) throws IOException
  {
    JavaApplication6  obj = new JavaApplication6(args[0]);//pass zeroth argument
  }

  public  JavaApplication6(String s) {
    server = s; 
    System.out.println(s); 
  }
}

运行代码时,请确保传递参数,否则将引发异常。

于 2013-04-12T12:50:04.183 回答
0

尝试这个

public final class JavaApplication6 {

String server;

public  JavaApplication6(String server) {
    this.server =  server;
}

public static void main(String[] args) throws IOException {
    JavaApplication6 jv = new JavaApplication6(args[0]);
}

}
于 2013-04-12T12:54:54.373 回答
0
import java.io.IOException;

public final class JavaApplication6  
{

    String server;

    public static void main(String[] args) throws IOException {
        JavaApplication6  jApp = new JavaApplication6 (args[0]);
    }

    public JavaApplication6 (String s) {
        server = s;
    }
}

像下面这样运行程序

java JavaApplication6“本地主机”

于 2013-04-12T13:08:08.783 回答