Java 从另一个类调用方法会在该语句处停止
我真的不明白我的程序是怎么回事。我从[另一个类]调用一个方法,不知何故[调用该方法的类]在调用的地方停止工作,并且不执行程序的其余部分 也没有出现错误,只是没有运行其余的(用print语句检查) 这是我的密码: 类调用该方法 具有该方法的类Java 从另一个类调用方法会在该语句处停止,java,methods,call,Java,Methods,Call,我真的不明白我的程序是怎么回事。我从[另一个类]调用一个方法,不知何故[调用该方法的类]在调用的地方停止工作,并且不执行程序的其余部分 也没有出现错误,只是没有运行其余的(用print语句检查) 这是我的密码: 类调用该方法 具有该方法的类 考虑到您提供的代码,我非常确定Banana中的main方法会被执行,而不是您实际想要执行的代码。只需删除Banana中的main方法,然后重新运行测试。当然:添加System.out.println(“开始”)作为main中的第一行 以下是仅用于文档编制的M
考虑到您提供的代码,我非常确定
Banana
中的main
方法会被执行,而不是您实际想要执行的代码。只需删除Banana
中的main
方法,然后重新运行测试。当然:添加System.out.println(“开始”)
作为main
中的第一行
以下是仅用于文档编制的MWE:
public class Main implements Foo {
public static void main(String... args) {
Banana ban = new Banana();
String[] listOfBananas = ban.getBananas();
System.out.println("I didnt get to this statement");
}
}
class Banana {
public static String[] giveOtherClassList;
public Banana() {
}
public String[] getBananas() {
return giveOtherClassList;
}
}
这个程序产生输出
我没有得到这个语句,它显然是不正确的,因此程序工作:)你可能已经用打印语句检查了。。。但是您是否实际调试了呢
?是否您正在执行Banana
中的main
方法,而不是您实际想要执行的main
方法?此外,您还有一些语法错误Banana-ban=…
->Banana-ban=…
和giveOtherclassList
在类之外声明)giveOtherclassList数组是在类香蕉之外声明的吗?哎呀,这是一个输入错误编辑的。香蕉内的主方法只是为了测试目的,我有另一个主方法,但我将尝试将其作为一个方法,以查看是否需要显示包含正在运行的过程的整个类。我有3个类:一个类使用主方法调用第一段代码,第二个类使用数组,第三个类从服务器创建数组。香蕉的主要功能是测试与服务器的连接,并确保服务器正在接收数据以放入数组。创建新香蕉并获取香蕉列表实际上是在另一个方法中进行的,该方法是从Monkey类调用的;因此,主要方法在monkey类中,但是,您的解决方案可能会起作用。谢谢@布莱恩,这其实并不重要。您的核心问题是执行错误的main
方法。
public class Banana {
public static String[] giveOtherClassList;
public Banana(){
}
public static void main(String[] args) {
StringBuilder a = new StringBuilder();
a.append("text text1 text2 text3");
giveOtherClassList = a.toString().split(" "); //Split will create an array
}
public String[] getBananas() {
//I know this method works because I ran this program with
//giveOtherClassList[3] and it returned the correct value
return giveOtherClassList;
}
}
public class Main implements Foo {
public static void main(String... args) {
Banana ban = new Banana();
String[] listOfBananas = ban.getBananas();
System.out.println("I didnt get to this statement");
}
}
class Banana {
public static String[] giveOtherClassList;
public Banana() {
}
public String[] getBananas() {
return giveOtherClassList;
}
}