Swift 类
Swift 是苹果公司开发的一种现代编程语言,主要用于开发 iOS、macOS、watchOS 和 tvOS 应用。在 Swift 中,类(Class)是面向对象编程的重要组成部分。下面是关于 Swift 类的一些基本概念和用法:
定义类
在 Swift 中,可以使用 class
关键字来定义一个类。以下是一个简单的类定义示例:
class Person {
var name: String
var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
func greet() {
print("Hello, my name is \(name) and I am \(age) years old.")
}
}
类的基本组成
- 属性(Properties):用于存储值,可以是变量(var)或常量(let)。
- 构造器(Initializers):用来创建类的实例,并初始化属性。
- 方法(Methods):与类关联的函数,可用于执行操作或计算。
类的实例化
使用构造器来创建类的实例:
let person = Person(name: "John", age: 30)
person.greet() // 输出: Hello, my name is John and I am 30 years old.
类的继承
Swift 支持类的继承,你可以创建一个类继承自另一个类。被继承的类称为父类,新的类称为子类。
class Student: Person {
var school: String
init(name: String, age: Int, school: String) {
self.school = school
super.init(name: name, age: age) // 调用父类的构造器
}
override func greet() {
super.greet()
print("I study at \(school).")
}
}
let student = Student(name: "Alice", age: 20, school: "XYZ University")
student.greet()
// 输出:
// Hello, my name is Alice and I am 20 years old.
// I study at XYZ University.
类的特性
- 引用类型:类是引用类型,这意味着类的实例是通过引用传递的。
- ARC(自动引用计数):Swift 使用 ARC 管理类实例的内存。
- 多态性:可以用同一个接口使用不同类型的对象。
使用类时,重要的是理解它们的引用特性,以及在内存管理和对象生命周期方面的影响。如果你要创建一个不可变的、轻量级的数据结构,则可能会倾向于使用 Swift 的结构体(Struct)而不是类。