DART:扩展类中抽象方法的实现

2024-04-03

我在文件 myclass.dart 中有两个类:

abstract class A{
  _myAbstractMethod();
}

class B extends A{

}

此时编译显示: MISSING CONCRETE IMPLEMENTATION OF一._方法。 这才是正确的行为!

当我将每个类放在单独的文件中时,问题就出现了。当我将 B 类声明移动到另一个文件时,编译不再告诉缺少的实现。

请注意,类 A 上的方法是私有的,并且“问题”仅发生在单独文件中的每个类中。


这是预期的行为,因为类上的方法A图书馆是私人的。

这意味着当放入第二个库时,该类Bknow that A有一个名为_myAbstractMethod,如果是的话,它甚至不能写名字(写_myAbstractMethod在图书馆B代表不同的名称,为第二个库私有)。

所以,从B它正确实现的观点A的(空)界面。 一切都很好。

The A阶级不同意,但也无能为力。 为了使B类完成后,编译器添加了一个合成_myAbstractMethod (using A的名字)调用时抛出的实现。

这是预期的行为。

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

DART:扩展类中抽象方法的实现 的相关文章

  • 获取异步函数的 NULL 值(使用等待之后),然后更新为新值

    当我运行我的应用程序时 它会抛出很多错误 并且我的设备上会出现红色 黄色错误屏幕 它会自动刷新并向我显示预期的输出 从日志中我可以看到 首先我的对象返回为 null 随后以某种方式更新并获得输出 我最近开始了 Android 开发 Flut
  • 未处理的异常:无法测试没有大小的渲染框

    所以我正在尝试重新创建一个 UI 模板 这是代码 我试图通过调用RecentlyViewed 添加另一个水平GridView 但重新加载后它无法呈现 我不知道如何渲染它 我尝试过使用扩展的小部件和灵活的但都不起作用 return Scaff
  • 我正在尝试从 firebase 获取数据,但 flutter 在 StreamBuilder 上显示 null 安全错误

    我在用着StreamBuilder在其中 我有一个任务列表 它从快照中获取输入并相应地显示数据 但是在处理快照数据时我遇到了空安全问题 代码如下所示 StreamBuilder
  • 我们如何在 flutter Text 或 RichText 中使用上标和下标文本

    我想显示上标文本 但没有找到任何示例 或者任何人都可以帮助我 我也尝试过 Text 和 RichText 但没有找到任何方法或字段 您需要使用 Unicode 这是来自的 Unicode这个答案 https stackoverflow co
  • 参数类型“对象?”无法分配给参数类型“Map

    我在以下行 var map Map from snap snapshot value 中的 snap snapshot value 参数上出现错误 错误是 参数类型 对象 无法分配给参数类型 Map class HomePageState
  • Dart 内部的 wait 到底做了什么?

    我正在开发一个需要使用本地存储的颤振应用程序 由于Android中的文档目录路径将在Future中给出 因此每次我想使用该路径时 我都必须检查future是否完成 代码可能类似于下面 class DataStructure late Fut
  • 使用 Dart 模拟 HTTP 响应

    我一直在开发一个新的 API 包装器 并且不想每次运行单元测试时都调用该 API 所以正如所描述的here https stackoverflow com questions 24208588 mocking with dart 我在嘲笑它
  • 子类需要访问抽象超类的私有属性

    我有一个抽象 java 类 它实现了它的几个方法 但没有实现其他方法 在它实现的方法中 它使用私有属性变量 使用的变量也需要在子类中使用 据我所知 我的选择是 在子类和超类中都声明私有变量 将抽象类中当前实现的方法的实现推迟到子类中 还有其
  • Java中私有静态变量有什么用?

    如果一个变量被声明为public static varName 然后我可以从任何地方访问它ClassName varName 我还知道静态成员由类的所有实例共享 并且不会在每个实例中重新分配 将变量声明为private static var
  • Symfony2 在测试中访问私有服务

    目前我正在测试 Symfony2 中的一些服务 并尝试使用 Guzzle MockPlugin 来控制 CURL 响应 使用 Symfony 版本 2 3 8 我遇到了一个有趣的行为 但我不确定这是否是 Symfony2 的错误 我在 se
  • Flutter Socket.listen()接收不完整数据

    使用套接字接收字符串数据 而且好像传输不完整 服务器发送大约 80 KB flutter 套接字有时接收 1 KB 有时接收 10 KB 左右 尝试了 onDone 处理程序 它是相同的 在接收到整个数据之前调用它 我还尝试将数据分成多个部
  • 不断向Map添加数据

    我需要在 for 循环之前将数据添加到 Map 或 HashMap 在 for 循环期间将数据添加到 Map 然后在循环后创建包含所有数据的文档 在 Android 的 Java 中我使用了 Map
  • 如何获取下载文件夹的(绝对)路径?

    在 Flutter 项目中 如何获取 Android 设备中 Download 文件夹的 绝对 路径 我的下载文件夹接下来是 闹钟 Android 数据 DCIM 文档 电影 音乐 通知 图片 设备 GALAXY S8 SM G955F 安
  • 使用 12 GB 内存运行 Dart

    I am using 16 GB RAM on my Pc This started happening while working without any reason as far as I no This always happens
  • 在选项卡栏中添加垂直线作为分隔线作为分隔线

    我有一个标签栏 我需要在标签之间放置一条垂直线作为分隔线 该怎么做 这就是我使用标签栏的方式 new TabBar unselectedLabelColor Color fromRGBO 119 119 119 1 labelColor C
  • 从图片中选择主颜色

    我是 Dart Flutter 框架的新手 我仍在探索它们的可能性 我知道在 Android 中可以拍照并以编程方式从中提取主要颜色值 我想知道 在纯 Dart 中如何实现这一点 我希望它能够兼容 iOS 和 Android 操作系统 这是
  • 使地图或列表在 Web UI 中可观察

    我可以通过在 Dart 代码中使用 observable 声明来使 String 或 num 类型可观察 observable var x and html 中的语法 div x x div But observable不适用于列表和地图
  • 在聚合物项目上转换 dart2js 时出错

    不支持的操作 无法在反射中使用ownerName 因为它未包含在 MirrorsUsed 注释中 ownerName只是聚合物元素上的已发布属性 我知道有一些这样的东西 在网络上 而不是在这里 但没有一个有可靠的答案 我还在下面得到了这个
  • flutter ios 应用程序在 xcode 上运行,但无法在 vscode 和 android studio 上运行

    我的应用程序在 android 和 ios 上完美运行 仅使用 xcode 由于某种原因 当我使用 vsCode 或 Android studio 运行它时 它返回一个错误 Launching lib main dart on iPhone
  • 从类定义中省略“private”关键字是否会造成混淆?

    我最近删除了一个private从类定义中指定 因为它位于顶部 紧接在class关键词 class MyClass private int someVariable 我认为这是多余的 一位同事不同意这一点 称这实际上 隐藏 了private数

随机推荐