【问题标题】:How can I fix two classes that won't show the output?如何修复两个不显示输出的类?
【发布时间】:2020-08-29 20:58:38
【问题描述】:

我正在尝试让 Team Roster 和 Coach 类显示输出,但是,当我运行程序时它不会产生输出。它只产生第一类,但之后就没有输出了。

public class Team {
    public static void main(String[] args) {
        String team_name = "Team Georgia";
        System.out.println(team_name);
    }
    //Team Roster
    public class Player {
        public void main(String[] args) {
            String[] first_name = {"Jack","Dave","Henry","John","David","Bob","Tony","Malcolm","Hiro","Jack","Jesus","Luck","Ben", "Benny", "Caboose", "Michael","Taylor","Mark","Hiroshida","Jack","Patric","Davin"};
            String[] last_name = {"Le","lynth","Luther","Kendral","Larry","John","Dave","Grendal","Lee","Lyn","Susan","Solo","Holmes","Stark","Potter","Welma","Han","Smith","Solo","Weasly","Emma","Bones"};
            String[] position = {"Front","Front","Front","Front","Side","Side","Side","Back","Back","Side","Front","Front","Front","Front","Side","Side","Side","Back","Back","Side","Mid","Mid"};
            for ( int i = 0; i < first_name.length; i++ ) {
                //System.out.print("First name: " + first_name[i]+ "\t\t" + " Last name: " + last_name[i] + "\t\t\t" + " Position: " + position[i] + "\n" );
                System.out.println("First name: " + first_name[i]);
                System.out.println("Last name: " + last_name[i]);
                System.out.println("Position: " + position[i]);
            }
        }   
    }
    
    //Coach
    public class Coach {
        public void main(String[] args) {
            String[] first_name = {"Brown","Dave","Jack","King"};
            String[] last_name = {"Jun","Jac","Frost","Kong"};
            String[] title = {"Head Coach", "Assistant Coach", "Offensive Coordinator", "Defensive Coordinator"};
            for ( int i = 0; i < first_name.length; i++ ) {
                //System.out.print("First name: " + first_name[i]+ "\t\t" + " Last name: " + last_name[i] + "\t\t\t" + " Position: " + title[i] + "\n" );
                System.out.println("First name: " + first_name[i]+ " Last name: " + last_name[i] + " Position: " + title[i]);
            }
        }
    }
}

【问题讨论】:

  • 请注意,这是标记为 javascript 而不是 java。他们没有任何关系
  • 能否请您也添加您的实际和预期输出
  • 问题是每个应用程序只能有一个主要功能。换句话说,只有一个 public void main(String[] args) {...} 这是您的应用程序工作流程开始的地方。您可以尝试创建其他类的实例,然后调用它们的函数。
  • 您的Player 和Coach 类中的main 方法不会自动调用。只有外部的static void main 是“特殊的”,所以它可能会在按原样运行时打印出“Team Georgia”。

标签: java arrays arraylist parallel-arrays


【解决方案1】:

Player 和Coach 类是内部类,因为Team 是主要的Public 类,您的文件也将仅以Team 类的名称保存(Team.java)。 所以只调用了 Team 类的 main() 方法,为了运行嵌套类的 main 方法,还需要单独分类。

由于您的嵌套类不是静态的,因此要调用嵌套类的 main() 方法,您首先需要创建一个 Team 类的对象,然后引用其他嵌套类对象并从该对象调用 main 方法。

例如,

new Team().new Player().main(args);
new Team().new Coach().main(args);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-26
    • 2020-01-05
    • 2019-09-25
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-08
    相关资源
    最近更新 更多