android - 在线类(class)和Kotlin中的UNits是否可以安全使用?

标签 android kotlin

当我尝试使用UInt时,出现以下警告消息:

This declaration is experimental and its usage should be marked with '@kotlin.ExperimentalUnsignedTypes' or '@OptIn(kotlin.ExperimentalUnsignedTypes::class)'


当我尝试创建内联类时(也就是UInt是),同样的事情也会发生:

The feature "inline classes" is experimental


这些功能确实很有帮助,但是这些警告消息只是阻止我使用它们,以防将来某些情况会破坏代码。这种恐惧现实吗?

最佳答案

实验性功能由Kotlin发布,供社区试用并提供反馈。从定义上讲,它们不是完全稳定的功能,因此

  • 可能不具有向后兼容性
  • 处于演化过程的早期或晚期
  • 可能会完全更改,甚至在将来的发行版中也会删除

  • 因此,您绝对不应在关键项目中使用实验性功能,因为
  • 它们不稳定,可能存在问题
  • ,以防实验功能在将来的版本中被修改或删除,当您将Kotlin升级到较新版本的
  • 时,您将拥有额外的重构工作

    话虽这么说,如果您打算使用UInt的项目不是很关键,请继续使用它,但是请注意上述内容。
    here很好地解释了Kotlin组件的稳定性。

    关于android - 在线类(class)和Kotlin中的UNits是否可以安全使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64018514/

    相关文章:

    安卓比较日期

    Android 开发 - 新 Activity 开放太快

    Android:ListView未启用的项目绘制不可见的分隔线

    Android View 绑定(bind) - 多模块项目中 Unresolved 引用

    java - 如何在YouTube( WebView )中使用全屏显示?

    android - 如何从另一个类中的 OnActivityResult 获取结果?(在 Activity 之外

    android - Kotlin 中的数据绑定(bind) + Room。如何在 Kotlin 中绑定(bind)数据类?

    android - 从字符串列表填充 Android 中的 Spinner

    android - startActivity() 与 context.startActivity()

    java - RxJava Live Reactive Queue(带开关)