You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ IDEA提示已实现的AbstractSkeletonEntity抽象方法未重写原因

问题原因及解决方案

核心原因

这个报错本质是你编写的getStepSound方法没有真正重写父类AbstractSkeletonEntity的抽象方法,父类的抽象方法未被实现,因此IDE要求你将子类声明为抽象类,常见触发场景有3种:

  1. 访问修饰符与包路径不匹配
    父类的abstract SoundEvent getStepSound();没有显式加访问修饰符,属于包级私有访问权限,仅允许同一个包下的子类继承重写。如果你的SkeletonKnightEntity和AbstractSkeletonEntity不在同一个包下,你定义的protected SoundEvent getStepSound()本质是子类新增的独立方法,没有覆盖父类的抽象方法。
  2. 类型导入错误
    如果父类方法返回的SoundEvent和你子类方法返回的SoundEvent不是同一个包下的类(比如你误导入了其他第三方库的同名SoundEvent类),会被判定为方法签名不一致,不属于重写。
  3. 模组开发映射不匹配
    如果你是使用Forge/Fabric进行Minecraft模组开发,当前使用的混淆映射表中,AbstractSkeletonEntity对应的该抽象方法名称并非getStepSound,你写的方法名和父类实际的方法名不符,自然无法完成重写。

解决步骤

  • 按住Ctrl点击IDE中的AbstractSkeletonEntity跳转至父类源码,确认抽象方法getStepSound的完整签名、访问修饰符,直接复制方法签名到子类中实现,避免手写出错。
  • 若父类方法为包级私有,要么将你的SkeletonKnightEntity类移动到和AbstractSkeletonEntity相同的包路径下,要么去掉你子类方法前的protected修饰符,保持和父类一致的访问权限。
  • 核对SoundEvent的导入路径,确认和父类方法的返回值类型完全一致,没有导错同名类。
  • 若为映射问题,核对你使用的映射版本对应的方法名,更换为正确的方法名即可。

内容的提问来源于stack exchange,提问作者icedchai codes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 21:36:04