Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在不同包的另一个类中使用一个类的方法_Java - Fatal编程技术网

Java 在不同包的另一个类中使用一个类的方法

Java 在不同包的另一个类中使用一个类的方法,java,Java,我有以下代码: public class class1 { ............. public static void calls(String[] args) { ................ 现在我尝试在另一个方法中的另一个类中调用此方法“calls”of“class1”,如下代码所示: public class newClass extends abc { public void executemywork() throws CIException { clas

我有以下代码:

public class class1 {
.............

public static void calls(String[] args) {

    ................
现在我尝试在另一个方法中的另一个类中调用此方法“calls”of“class1”,如下代码所示:

public class newClass extends abc {

public void executemywork() throws CIException {

class1.calls(args); //error here "args" cannot be resolved to a variable

我尝试过在stack overflow中寻找其他解决方案。我甚至尝试创建“class1”对象,并在第二种方法中使用它。我仍然在这里得到同样的错误。错误表示“args”无法解析为变量。这两个类都在不同的包中,我也导入了另一个类

声明并为参数指定一个值,如

String[] args = new String[]{"a","b","c"};

这是一个编译错误 您正在执行
class1.calls(args)但此处未定义
args
。因此出现了编译错误

更改代码,例如

public class newClass extends abc {

            public void executemywork() throws CIException {
                    String[] args = new String[]{"a","b","c"};
                    class1.calls(args); //error here "args" cannot be resolved to a variable
            }
}

电话没问题。问题是,正如错误消息所说,您没有定义
args
,这是您传递给
调用的
。您没有在newClass类中声明变量args。错误与方法的位置无关。您根本没有任何名为
args
。这是一个副本,可能是的,但我仍在查找…如果我初始化为字符串[]args=null,则为Si;这应该可以完成任务