【问题标题】:Im getting an error in my class in Eclipse我在 Eclipse 的课堂上遇到错误
【发布时间】:2012-04-08 23:55:45
【问题描述】:
import acm.graphics.*;
import acm.program.*;
import java.awt.*;

      public class MyRobot extends GraphicsProgram {
        }
 }

这是我写的代码,每当我输入extends GraphicsProgramConsoleProgram 时,它都会告诉我

The serializable class MyRobot does not declare a static final serialVersionUID field of type long.   

另外,当我尝试运行带有此警告的程序时,它只显示一个空白程序。

谁能帮我解决这些问题?

【问题讨论】:

  • 请在每个线程问一个问题。

标签: java eclipse serialversionuid


【解决方案1】:

因为你的班级是Serializable

类的可序列化性由实现 java.io.Serializable 接口。没有实现这个的类 接口不会对它们的任何状态进行序列化或反序列化。 可序列化类的所有子类型本身都是可序列化的。这 序列化接口没有方法或字段,仅用于 识别可序列化的语义。

【讨论】:

    【解决方案2】:

    善待java。您使用具有 Serializable 接口的类。他们需要你declare a static final serialVersionUID field of type long。他们要求你这样做。太好了,declare a static final serialVersionUID field of type long。 :-)。 +1 对新手来说不是一个坏问题。

    【讨论】:

      【解决方案3】:

      该程序可能什么也不显示,因为没有添加任何组件,也没有在其中绘制任何内容。但是,除非您使用其中一个棘手的 IDE 来创建不可见的 main(),或者除了 MyRobot 之外还有其他类,否则我看不到这段代码是如何运行的。


      顺便说一句 - 忘记在 Eclipse 中对此的“快速修复”是:

      1. 双击“问题”选项卡中的警告,以关注问题类。

      2. 键入 Ctrl 1 表示“快速修复”

      3. 选择下面显示的第一个或第二个选项。

      【讨论】:

      • 抱歉,我没有在里面添加代码,因为我不知道我需要什么。
      • 在问题解决之前,您如何知道什么是相关/必要的?请不要使用像“cuz”这样的虚构词。这个词是“因为”。它可以帮助人们能够帮助您。
      猜你喜欢
      • 1970-01-01
      • 2014-09-17
      • 1970-01-01
      • 2018-06-13
      • 1970-01-01
      • 1970-01-01
      • 2020-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多