当前位置: 首页 > 知识库问答 >
问题:

没有类的Java2D方法调用

宰父淳
2023-03-14

我刚开始学习Java,试着画一些矩形。

我运行了这个示例,但不明白一件事:类ShapesDemo2D有一个构造函数:

public void init() {
    //Initialize drawing colors
    setBackground(bg);
    setForeground(fg);
}

我明白挫折是一种方法。

  • 但是如果没有类或实例引用,如何调用它呢?

这是组件中抽象组件类的方法。java文件。

  • 它不应该像组件吗。挫折背景(bg)组件状态。挫折背景(bg)

但组件是一个抽象类,所以它不能被实例化,它的方法也不能被调用。

  • 那么,怎样才能调用这个方法呢

共有1个答案

郜振国
2023-03-14

您忘记了类代码顶部的ShapesDemo2D扩展了JApplet,这意味着该类扩展了另一个类JApplet,因此上面方法中的代码实际上是在调用super。挫折背景 超级。设置前景(fg) 。超级类JApplet拥有这些方法,因为根据JApplet API,该类从拥有这些方法的组件扩展而来,这意味着ShapesDemo2D也将继承这些方法。

说到这里,请抛弃这个教程,因为小程序不再支持,是死技术,已经死了最长时间,学习一个死技术是没有意义的。

附带说明,你说:

类ShapesDemo2D有一个构造函数:

public void init() {
    //Initialize drawing colors
    setBackground(bg);
    setForeground(fg);
}

但这实际上不是一个构造函数,而是一个方法。ShapesDemo2D类的构造函数如下所示:

public ShapesDemo2D() {
    // .....
}

这似乎是一种学究式的区别,但编程就是要尽可能准确地使用您的思维和代码。Java编译器是严格的、不可原谅的,所以你也必须如此。

 类似资料:
  • 我hase测试类: 我想明白,怎么能叫: 将返回def的值。 有可能吗?

  • 我还尝试扩展ObjectMapper并在那里注册javaTimeModule,但不知道如何在Jackson Flow中注册customObjectMapper。我只是把默认构造函数用于测试,它确实在应用程序启动时被调用,但话说回来,没有结果,我仍然得到同样的错误。 错误:找不到适合类型[简单类型,类java.time.LocalDate]的构造函数:无法从JSON对象实例化(需要添加/启用类型信息

  • 我是大学里的一个新手Java程序员。今天我发现了一些东西,打破了我关于Java语法如何工作的一个概念。 在ArrayList类中找不到方法stream(),但它可能看起来好像在那里。当我将鼠标移到Eclipse中的-方法上时,它表示这是集合的一部分,但我在其在线文档中的任何地方都找不到方法。 如果方法不是我调用它的类的一部分,为什么它可以调用它?

  • 问题内容: 这可能吗?我尝试过,但EasyMock抱怨时间必须> = 1 问题答案: 我设法提出了一个解决方案:

  • 问题内容: 我在Service类中看到了一种被标记为的方法,但是它也在同一类中调用了其他未标为的方法。 这是否意味着对单独方法的调用导致应用程序打开与DB的单独连接或暂停父事务等? 不带任何注释的方法的默认行为是什么,而另一个带有注释的方法调用该方法的默认行为是什么? 问题答案: 当你调用没有事务块之内的方法时,父事务将继续使用新方法。它将使用与父方法(with )相同的连接,以及在调用的方法中导

  • 我试图理解当我遇到诸如“groovy.lang.MissingMethodException:无方法签名:Three.method()适用于参数类型”之类的错误时会发生什么: