android - 密封类在 Android 环境中的性能影响是什么?

标签 android performance kotlin enums sealed-class

在 Android 中,由于性能问题,建议不要使用枚举。直到最近才如此,在 Google IO 2018 中宣布枚举现在可以安全使用,尽管对于性能更高的应用程序仍然建议避免使用它们。
我的问题是:
我们可以在 android 中广泛使用 kotlin 密封类吗?
似乎密封类是枚举的扩展。如果是这样,我们应该使用类似于枚举的密封类吗?
提前致谢。

最佳答案

远离enum的建议在安卓上是夸张的。避免枚举对 Android API 来说是有意义的:它们大量使用特殊常量,应用程序中有很多这样的对象,而且它们对性能至关重要。

您的自定义应用程序代码可能只想使用几个枚举来表达业务逻辑中的实体。创建十几个,甚至几百个 enum实例将留下难以察觉的足迹。

同样的建议也适用于密封类:一定要使用它们并提高代码的质量。仅当您计划着手构建具有成千上万个类似枚举的常量和类的 100 KLOC 应用程序时,才停止考虑您的选择。

关于android - 密封类在 Android 环境中的性能影响是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53588203/

相关文章:

android - 使用 PhoneGap 上传 iOS 应用程序的清晰步骤

android - 如何在我的 Activity 中存储来自 API 的数据

sqlite - 如何优化sql查询使其更快

sql-server - SSIS 从带有 Where 条件的 Excel 工作表中选择

performance - 为什么 R 中的循环很慢?

arrays - Kotlin - Val 无法重新分配,但可以通过从索引访问来重新分配?

kotlin - 使用一些常量和其他变量创建一个构建器

Java & android : Help linking an item in a listView to its correct view, 但不是我所知道的方式

android - 使用 SimpleCursorAdapter 的 AlertDialog 不显示值

android - 从 ListView 移动到第二个 Activity 的内容时不显示