- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
阅读 Ordesky 关于 Scala 的书的第 20 章,我发现内部类是路径相关的。在其他特性中,这意味着它们只能在外部类中实例化或提供外部类实例。
问题来了:我想在 Scala 中实现一个static inner class
,但作者建议这是不可能的。我立即想到让“内部类”(我们称它为 Inner
)成为 Outer
的伴随对象的成员。
接受的答案this问题似乎指向那个方向。但这导致了一个问题:Inner
的类型不是 Outer#Inner
,我可以尝试类似的方法:
object Outer {
class Inner extends Outer#Inner { }
}
但这不起作用。你知道这方面的工作吗?我有预感可以用抽象类型来完成,但我不确定。
请注意,由于其类型,使 Inner
成为伴随对象的内部类并不完全等同于具有非路径依赖的 Inner
类。
最佳答案
I immediatelly thought of making the "inner class" (lets call it Inner) a member of Outer's companion object.
是的,这是最接近的 Scala 等价物。
But that drives to a problem: Inner's type ins't Outer#Inner
这不是问题,因为Outer#Inner
等同于Java 中Outer
的非静态 内部类。 IE。它有一个对 Outer
对象的引用。
I would like to get a inner class which is not path dependant or, at least, to know if that is possible
如果您想创建一个不能依赖于路径使用的非伴随内部类,这是不可能的。当然,您可以随时在代码中编写 Outer#Inner
而不是 o.Inner
。
关于java - 静态内部类与 Companion 的内部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26992209/
我正在查看与 Akka 相关的类型安全激活器代码,以下构造引起了我的兴趣: 伴侣对象: object MarkerActor { sealed trait MarkerMessage case
我在所有 Jetpack compose 项目中多次收到此错误。此错误是否与 Gradle 相关?因为我没有对主题进行任何更改。 java.lang.NoSuchFieldError: No fiel
我第一次使用 Jetpack Compose,但出现此错误。我还没有弄清楚问题到底出在哪里,但我正在使用单 Activity 架构。如果需要更多信息,请告诉我。 根据错误,问题似乎来自脚手架。
在 Kotlin 中,如果我在带有 Companion. 的伴随对象中有一个函数作为前缀( Companion.foo ),它与 foo 相比有何不同?在伴生对象内? 我注意到在下面的代码中,Comp
一本书谈论string::size_type (这是 string.size() 类的 std::string 函数的返回类型)。 我不明白这些“同伴类型”是什么。有人能给我详细解释一下它们是什么吗?
阅读 Ordesky 关于 Scala 的书的第 20 章,我发现内部类是路径相关的。在其他特性中,这意味着它们只能在外部类中实例化或提供外部类实例。 问题来了:我想在 Scala 中实现一个stat
出于某种原因,我的应用程序图标从未出现在 中同伴 应用程序 苹果 watch . 图标出现在 iPhone 和 苹果 watch 仪表盘。 我提供了配套设置所需的 58*58(29*29@2x) 和
所以我是学习 Kotlin 的新手,来自 C# 背景。我一直在处理类型和其他一些事情。我正在尝试创建一个静态类“WalMartGreeters”,它可以将欢迎词添加到列表中,然后调用一个简单的静态函数
我是 GNUradio 的新手,我正在制作一个 FM 接收器。我正在将数据记录到文件接收器中。但是我只需要1毫秒的数据。我如何指定这个时间,以便我的流程图在这个时间之后自动停止? 我还阅读了一些关于调
如何计算特定带宽内信号的平均功率并将该值存储在一个变量中供以后引用? 例如,我有一个 15kHz 宽的低通滤波器,我想知道 GNU Radio Companion 中是否有一个工具可以让我计算特定时间
我有 2 个枚举 enum class Enum1{ X1, X2, X3, X4; companion object { val default = X2 }
如果我有一个看起来像这样的(简化的)类: class MyManager @JvmOverloads constructor(/*constructor args*/) : MyManagerInte
我正在使用 Companion library用于将视频从我的应用转换到 Chromecast。有什么办法可以添加字幕/隐藏式字幕切换按钮,以便用户能够打开和关闭它们吗? 我正在阅读他们的 docum
tl:博士;是否可以 import 另一个类的伴生对象内的方法,无需使用 Companion 限定导入?也就是说,假设 toFoo 是一种方法,我是否可以说 import Bar.toFoo 而不是
我正在尝试使用 GNURadio Companion GUI 创建一个分层 block 。我在其他帖子中找到的答案说选择要合并的 block ,然后转到“更多”->“创建层次”。然后应该会出现一个新屏
我遇到了 Companion Objects 选择其类型而不是 case 类的问题 我正在使用喷雾 json serdes。他们需要一个隐式的 JsonFormat。这种格式是通过调用一个依赖于案例类
在 IntelliJ IDEA 中,是否有键盘快捷键或导航快捷键可以在 Scala 伴侣之间跳转object和一个同伴 class ? 最佳答案 似乎答案是否定的,没有。 关于scala - Inte
我正在尝试使用 Cast Companion 库实现音量控制。不过,我有点困惑应该怎么做。 最初,我一直在使用 VideoCastManager.onDispatchVolumeKeyEvent,它运
我正在使用 Cast Companion Library,它大部分工作正常,我有迷你播放器,还有锁屏控件和播放内容的 Activity ,但我永远无法显示通知屏幕。初始化时我正在执行以下操作: mCa
我正在按照教程部署 Wordpress使用 Docker在 Ubuntu服务器。教程在这个website . 值得一提的是,此时我已经有两个子域,一个用于 Wordpress 站点,另一个用于 php
我是一名优秀的程序员,十分优秀!