当前位置: 首页 > 面试题库 >

快速获取类名的用户可读版本(在objc NSStringFromClass中就可以了)

双俊人
2023-03-14
问题内容

Swift中是否有等效的NSStringFromClass给出了用户可读的类名版本?我尝试将其与我创建的本机Swift类一起使用,但是如您所见,结果似乎是编译器对类名的内部表示:

println(NSStringFromClass(MyClass.self))

结果:

_TtC5test7MyClass

我尝试将 @objc 属性添加到该类,并使其成为NSObject的子类,但没有区别。我发现,如果我用同名的Objective-
C类替换MyClass,并将其导入到桥接头文件中,则会得到“ MyClass”,但这不是必须的。

另一个选择是为此制定一个协议,我要以此方式使用的每个类都必须符合:

protocol Nameable {
    class var className: String { get }
}

但是,使用该语言以内置的方式执行此操作会更容易。


问题答案:

您现在可以执行以下操作:

String(MyClass)


 类似资料:
  • 我正在尝试从Java应用程序的Google Sheets API。我已经访问了教程中提到的文件,但我无法访问我自己创建的任何文件。 这是我使用的代码: 我在Drive中手动创建了一个电子表格,用字符串填充A1: B,并从URL中复制了id,看起来像“1IeoY5jY3Su86x1uvgc1yJqEU-6dd6FdUKo8Yf5J73k”(不是实际的ID)。 这将生成错误400无法解析范围:类数据!

  • 问题内容: 我已经将网站托管在本地服务器上,并且该网站可以由多个本地用户访问,并且当他们尝试访问Java代码时,我希望当他们访问特定页面时获得访问此页面的客户端/用户的os用户: 它获取服务器而不是客户端的操作系统用户名。 请告知如何完成该任务,谢谢。 问题答案: 使用java方法就可以了。

  • 测试数据 # linecache_data.py import os import tempfile lorem = '''Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vivamus eget elit. In posuere mi non risus. Mauris id quam posuere lectus soll

  • 问题内容: 我正在用python写一个简单的程序,我需要获取最新版本的Chrome。但是我在任何地方都找不到如何获取最新版本的Chrome。有没有办法以编程方式获取最新版本的Chrome? 问题答案: Chrome小组的官方链接。 https://chromedriver.storage.googleapis.com/LATEST_RELEASE 这提供了最新的Chrome版本 我编写了一个简单的

  • 问题内容: 我们有一个图书馆,每两周发布一个版本号不同的库。问题是,为了将版本号存储在我们的jar中,我们有一个version.txt文件,其中仅包含版本号,然后将其包含在内部版本中。这似乎是错误的方法,但我无法提出更好的解决方案。有什么更好的方法来将版本号存储在我们的jar中,以便如果用户打电话给我,我可以轻松地找到他们正在使用的产品的版本? 问题答案: 首先-确保您的程序或工具可以显示一些版本

  • 问题内容: 我如何禁用Spring日志以使其具有我可以轻松阅读或其他人可以阅读的日志输出。关于如何禁用spring bean加载日志的类似问题的答案建议注释掉中的所有行。就我而言,没有这样的行。 这是 问题答案: 对于未明确指定的所有内容,默认日志记录为DEBUG。因此,所有内容都记录在该级别(根据你的配置判断),基本上,你正在泛滥日志。你不应删除org.springframework的记录器,而