【问题标题】:How to create an instance of a class in Java BlueJ?如何在 Java BlueJ 中创建类的实例?
【发布时间】:2014-05-02 23:13:04
【问题描述】:

我被告知要创建此类的一个实例并调用 drawGalaxy()。当我尝试编译并调用它时,它说它找不到方法“drawGalaxy”。有什么帮助吗? :/

 public class GalaxyQuest
        {
            private Galaxy galaxy;

            /**
             * Creates a new instance of Galaxy Quest.
             */
            public GalaxyQuest() 
            {   
                initialiseGalaxy("GalaxyData.txt");
            }

            /**
             * Draws the galaxy to the console.
             */
            public void drawGalaxy()
            {
                galaxy.drawGalaxy();
            }
    }

【问题讨论】:

  • Galaxy类中有没有一个叫drawGalaxy的方法?
  • 你添加了一个导入语句,如果你在其他包中有 Galaxy 并且正如@Christian 所说的检查方法

标签: java class instance bluej


【解决方案1】:

这是您在 Java 中创建 Class 实例的方式:

GalaxyQuest g = new GalaxyQuest();

然后您可以像这样调用公共方法:

g.drawGalaxy();

关于您的错误,如果在 Galaxy 类的实例中找不到 drawGalaxy() 方法,则意味着以下两种情况之一:

  1. 方法不存在。在这种情况下,您应该定义它。
  2. 该方法不是公开的,即只能从 Galaxy 内部访问。阅读access specifiers 并声明该方法是公开的。

您可以阅读有关创建 Java 对象的更多信息here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-02
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2010-09-09
    相关资源
    最近更新 更多