【问题标题】:Why does my code keep saying "No public class found to execute?为什么我的代码一直显示“找不到要执行的公共类?
【发布时间】:2023-01-15 05:17:15
【问题描述】:

我的代码在私有类中一直出错。这是我第一次使用java,所以我很困惑

class Party {
    private int numGuests;

    public int getNumGuests() {
        return numGuests;
    }

    public void setNumGuests(int numGuests) {
        this.numGuests = numGuests;
    }

    String displayMessage = "Enjoy the party!";

    {
        System.out.println(displayMessage);
    }
}

class BirthdayParty extends Party {
    public static void main(String[] args) {
       Party bday = new BirthdayParty();
       bday.setNumGuests(90);
       System.out.println(bday.getNumGuests());
    }
}

我试图将第一类改为公共类,但仍然有错误。我希望代码显示消息和号码。

【问题讨论】:

  • class BirthdayParty extends Party {之前添加public
  • 如果有的话,您应该将BirthdayParty的可见性更改为public,因为此类包含入口点(public static void main(String[] args) { ... }
  • 呃,'no public class'的错误是因为没有public class?这是包含 main 的类需要公开。
  • 你如何尝试运行 BirthdayParty 类?因为java允许你运行包私有类。即 javac yourfile.java && java BirthdayParty 工作并打印预期结果。

标签: java class methods encapsulation


【解决方案1】:

main 方法应该在公共类中。换句话说,您应该公开BirthdayParty

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-03
    • 1970-01-01
    • 2013-04-22
    • 2020-08-01
    • 1970-01-01
    • 2018-09-23
    • 2019-12-28
    相关资源
    最近更新 更多