我们只在main方法中使用字符串args吗?

时间:2016-01-23 18:05:29

标签: java

为什么我们不能这样使用字符串args? 这里我在readAttributes方法中使用了字符串args []来读取main函数之外的输入。这显示了一个编译错误。我想通过关键字从一个不同的方法(readAttributes)传递参数而不是使用String args的main.What更改需要吗?

 class rectangle
{
     int l,b;
    public void area_rect(int l,int b)
    {

        System.out.print(+(l*b));
    }
    public void perimeter_rect(int l,int b)
    {

        System.out.print(+(2*(l+b)));
    }


    ***public void readAtrributes(String args[])
        {

            int l=Integer.parseInt(args[0]);
            int b=Integer.parseInt(args[1]);

        }***



}
public class rec
{
    public static void main(String args[])
    {

        readAttributes ra=new readAttributes();

        area_rect ar=new area_rect();
        perimeter_rect pr=new perimeter_rect();


    }
}

3 个答案:

答案 0 :(得分:0)

readAttributes是一种方法,但您尝试将其初始化为类。

即使它是,你仍然必须传递一个实际的String数组作为参数。

答案 1 :(得分:0)

在Java中,args包含提供的command-line arguments作为String对象的数组。

换句话说,如果您将程序作为java Program运行一个,那么args将包含["one", "two"]

答案 2 :(得分:0)

readAttributes是一个方法,你从中创建了一个对象,因此会出现编译错误
你必须以这种方式调用这些方法

public static void main(String args[]) {
    // creating an object from class rectangle
    rectangle rect = new rectangle();

    // calling methods of that object 
    rect.readAtrributes(args);
    rect.area_rect(12, 12);
    rect.perimeter_rect(10, 12);

}