java - scala中的Java类类型不匹配?
问题描述
我正在尝试从中导入Color
类javafx
,并在 scala 类中使用它。但是当我在其他地方使用我的课程时,我收到了这个错误:
Error:(9, 50) type mismatch;
found : javafx.scene.paint.Color
required: drawingengine.Color
这是代码:
package drawingengine
import javafx.scene.paint.Color
sealed class Pixel(x: Int, y: Int, color: Color);
我可以通过将第 3 行更改为:
sealed class Pixel(x: Int, y: Int, color: javafx.scene.paint.Color);
但我认为这有点难看,所以没有更好的方法来使用导入的类吗?
另外,我收到此警告
imported `Color' is permanently hidden by definition of object Color in package drawingengine
import javafx.scene.paint.Color
IntelliJ 将导入行显示为灰色,就好像它没有被使用一样。
我可以看到其他人也遇到了同样的问题,但我看不出所示示例如何适用于我正在做的事情。那么我能对这个警告做些什么呢?
解决方案
Color
这意味着您已经在同一个包中定义了自己的类,drawingengine
并且它与 JavaFX 冲突。
这个
javafx.scene.paint.Color
修复它,因为您明确使用限定名称。
如果你想同时维护它们,你可以给 JavaFX 取一个别名
import javafx.scene.paint.{Color => FxColor}
并像使用它一样
sealed class Pixel(x: Int, y: Int, color: FxColor);
推荐阅读
- sql-server - Gitlab CI 无法连接到 ASP .Net Core APP 上的 Azure SQL Server
- android - 在 gms 视觉中加载 com.google.android.gms.dynamite.DynamiteModule$LoadingException 时出错
- javascript - Firebase如何链接使用phoneNumber创建的帐户
- python - Python 使用文件字节访问 zip 文件并遍历每个文件以将它们保存到数据帧中返回未找到文件的错误
- c++ - 带有引用的对象的 STL 容器
- git - 自动解决樱桃挑选冲突是否可能?
- microsoft-graph-api - MS Graph - SharePoint 错误:未添加成员
- python - 循环三个列表以创建组合输出?
- spring-boot - 无法使用自定义过滤器在 Spring Security 中实现会话限制
- algorithm - 压缩无序的哈希集合