以字符串形式获取 Swift 中对象的类名


本文将向您介绍如何在 Swift 语言中获取对象的类名。

Swift 向我们提供了名为 type(of:) 的函数来获取值类型或对象的类名。

您可以使用 type(of:) 函数查找值的动态类型,尤其是动态类型与静态类型不同时。值的静态类型是在编译时已知的类型。值的动态类型是在运行时值的实际类型,它可以是其具体类型的子类型。

示例

import Foundation
class Person {
    var name: String?
    var address: String?
}
class Student: Person {
    var rollNumber: Int?
    var schoolName: String?
}
let personObject = Person()
let studentObject = Student()
let className1 = String(describing: type(of: personObject))
let className2 = String(describing: type(of: studentObject))
print("personObject type: \(className1)")
print("studentObject type: \(className2)")

输出

personObject type: Person
studentObject type: Student

说明

在上面的示例中,我们使用了 String(describing:) 函数以字符串格式获取类型。

结论

type(of:) 函数用于获取对象的类名。此函数适用于任何类型的对象,例如 Int、String、自定义对象等。您可以使用 String(describing:) 函数将对象类型转换为字符串格式。

更新于: 2023 年 09 月 07 日

2K+ 浏览

启动你的 职业

通过完成课程获取认证

开始使用
广告