出现编译错误时eclipse如何执行java代码

2023-12-02

当下面的java代码在eclipse中执行时,它给出了正确的输出(即打印'Class B'),但根据java规范,代码无法编译(因为超类构造函数需要一个int编译器为类 B 提供的参数和构造函数包括对超类(无参数构造函数)的调用,该构造函数未定义),并且当尝试在命令行中使用 javac 命令编译文件时,它仅编译超类,即 class A 并失败并出现以下编译错误:

B.java:8: cannot find symbol
symbol  : constructor A()
location: class A
public class B extends A {
   ^
1 error

以下是java文件内容:

class A {

    public A(int x) {
        //
    }
}

public class B extends A {

    public static void main(String[] args) {
        System.out.println("Class b");
    }
}

有人可以解释一下 eclipse 如何在无法编译类的情况下执行 main 方法吗?提前致谢。

UPDATE

我删除了bin文件夹中由eclipse创建的.class文件并尝试执行该类,但它无法编译,因此没有运行。但是当我用公共类名创建一个源文件并保存时没有任何内容,然后添加上述内容时,它就起作用了。如果eclipse使用之前编译的版本来执行,它怎么会给出以下输出:main方法,因为它没有main成功完全编译时的方法?


实际上,eclipse 尝试编译该类,但由于构建错误而无法编译,当您只需运行这些文件时,它会执行先前编译的类,这些文件之前已成功编译(eclipse 尝试在每个另存为上编译和构建文件)根据通用设置)。

为了解决这个问题,您可以尝试在运行之前清理项目,而在 javac 的情况下,它只是编译,

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

出现编译错误时eclipse如何执行java代码 的相关文章

随机推荐

  • 使用C在eclipse中多重定义主要错误

    我正在尝试使用 Eclipse 中的 C 项目生成两个 exe 客户端和服务器 两者都有主要功能 因为他们是不同的前任 两者都使用通用的 confutils c 文件 如何解决主要问题的多重定义 我知道我们不能在一个项目中有两个电源 我的
  • 源中包含 < 和 > 的 XSLT 转换

    我有一个以下格式的输入 XML
  • 在 R 中重新编码多个变量

    我想在 R 中一次重新编码多个变量 这些变量位于更大的数据框中 以下是一些示例数据 z lt data frame A c 1 2 300 444 555 B c 555 444 300 2 1 C c 1 2 300 444 555 D
  • Angular UI Router - 如何在切换视图时保留视图

    我是 Angular 和 UI Router 的新手 Plunk http plnkr co edit 1wfyrGryfGG5RtXozPFY p preview Setup我有三个顶级应用程序导航按钮 主页 项目 帮助 他们使用 Ang
  • R.java 文件未创建

    我的 Android 应用程序中有 R java 文件 但我不知道 它是如何删除的 要再次创建它 我清理我的项目 并通过单击 构建项目 重建我的项目 我不知道是什么问题 它不会再次被创建 一般来说 每当我构建项目时它都会自动创建 如果您在更
  • firebase获取每个子项的子项的数据

    大家好 我是 firebase 的超级新手 我需要一些帮助 首先 我正在做的是一份清单 例如 刻度表包含一个项目列表 其中包含刻度日志 因此我设计的数据如下 清单 ticksheets JbN5ol2jGRtAOZ9ovrO auto ge
  • noscript 标签,如果未启用,我需要提供替代 html

    如果用户浏览器上未启用 JavaScript 是否可以用 HTML 替换 javascript 我知道我可以使用
  • 当以 C++03 为目标时,使用 std::basic_string 作为连续缓冲区是否合理?

    我知道在 C 03 中 从技术上讲std basic string模板不需要有连续的内存 然而 我很好奇现代编译器有多少实现实际上利用了这种自由 例如 如果有人想使用basic string要接收某些 C API 的结果 如下面的示例 分配
  • 是否可以从具有超时的输入流中读取?

    具体来说 问题是编写一个这样的方法 int maybeRead InputStream in long timeout 如果数据在 超时 毫秒内可用 则返回值与 in read 相同 否则返回 2 在该方法返回之前 任何生成的线程都必须退出
  • 您如何简单地解释类型转发?

    我正在准备 MCTS 70 536 阅读后this文章 我不确定我是否理解类型转发的概念 我发现文章中给出的步骤更加令人困惑 如果我复制要转发的类型的源代码并重新编译它 该怎么办 旧的 dll 和客户端会发生什么 类型转发允许您在程序集之间
  • 如何在Python中将日转换为年和月?

    如何在Python中将日转换为年 月和日 例如 如果某人已经 5 538 天了 我怎样才能通过这样的年月日来显示这一点 15岁2个月又1天 这是为了获取用户的输入 print Please enter your birthday bd ye
  • UICollectionView - 水平排列单元格

    所以基本上我的问题是我的集合视图单元格是从上到下排序的 而不是从左到右排序的 This is what it looks like 1 4 7 2 5 8 3 6 9 This is what i want 1 2 3 4 5 6 7 8
  • 需要在角度2中插入Script标签

    我已经做了一些阅读和搜索 几乎所有我发现的内容都表明脚本标签不能包含在 Angular 2 的模板中 我们会像您一样有意从模板中删除标签 不应该使用它们来按需加载代码 https github com angular angular iss
  • 特定元素是否存在事件

    是否有任何事件可以知道原始 javascript 中特定元素何时 开始存在 例如我有 div class parent div class child div div 我想在 parent 和只有 parent 不是 child 开始存在
  • 更快地绘制实时音频信号

    我有一段代码 它从笔记本电脑的音频插孔获取实时音频信号 并在进行一些基本过滤后绘制其图表 我面临的问题是 随着程序的运行 实时绘图变得越来越慢 有什么建议可以让绘图更快并以恒定的速度进行吗 我认为动画功能会使其更快 但无法根据我的要求制定
  • git diff 用于任何存储库之外的自定义 2 个文件?

    I need git diff我在任何存储库之外拥有的 2 个文件的功能 有办法做到吗 就像是git diff file1 path file1 txt file2 path file2 txt如果没有 替代解决方案是什么 答案就在the
  • 强制请求使用 IPv4 / IPv6

    如何强制requests库使用特定的互联网协议版本来获取请求 或者可以用Python中的另一种方法更好地实现这一点吗 我可以 但我不想使用curl 阐明目的的示例 import requests r requests get https m
  • 在 Woocommerce 3 中使用 WC_Cart add_to_cart() 方法存储自定义数据

    我正在创建一个会员网站 并为每个会员计划完全创建静态页面 只有 3 个计划 但是 我为每个计划添加了产品 当我点击 选择计划 按钮时 我会重定向到一些自定义表单 在其中询问用户我们将用于实现计划的信息范围 与sneakertub com相同
  • 如何使用 CGContext 获取像素的 RGB 值?

    我正在尝试通过更改像素来编辑图像 我有以下代码 let imageRect CGRectMake 0 0 self image image size width self image image size height UIGraphics
  • 出现编译错误时eclipse如何执行java代码

    当下面的java代码在eclipse中执行时 它给出了正确的输出 即打印 Class B 但根据java规范 代码无法编译 因为超类构造函数需要一个int编译器为类 B 提供的参数和构造函数包括对超类 无参数构造函数 的调用 该构造函数未定