Trước khi chúng ta xem cách sử dụng biến static ở đâu và như thế nào, trước tiên chúng ta hãy hiểu biến static trong swift là gì?
Biến tĩnh
Biến tĩnh là những biến có giá trị được chia sẻ giữa tất cả các cá thể hoặc đối tượng của một lớp. Khi chúng ta định nghĩa bất kỳ biến nào là static, nó sẽ được gắn vào một lớp chứ không phải một đối tượng. Bộ nhớ cho biến tĩnh sẽ được cấp phát trong thời gian tải lớp.
Hãy để chúng ta hiểu hình trên, chúng ta có một lớp Sample và nó có hai đối tượng s1 và s2. Bạn thấy s1 và s2 đều có biến “a” riêng biệt nhưng chúng có biến chia sẻ chung “b”. “B” này là biến tĩnh.
Bây giờ chúng ta hãy xem chúng ta nên sử dụng các biến tĩnh ở đâu và như thế nào.
Bạn tạo biến tĩnh bằng cách thêm từ khóa static vào trước khai báo biến của mình.
static let/var variable name: type(optional) = value static let num1: Int = 1 static var name1 = “Akash”
Chúng tôi sẽ sử dụng sân chơi để khám phá nhiều hơn.
Mở Xcode → Tệp → Sân chơi và đặt tên là “staticvariables”
Khi chúng tôi xác định bất kỳ biến nào là let, điều đó có nghĩa là các giá trị của nó không thể sửa đổi được. Mặt khác, nếu chúng tôi xác định bất kỳ biến nào là var thì có nghĩa là các giá trị của nó có thể được sửa đổi.
class Student { static let section: String = "A" // static constat static var day: String = "Monday" // static variable var name: String = "Akash" // instance variable var rollNum: Int = 1 // instance variable } let student1 = Student() // Object 1 print(student1.name) // Akash print(student1.rollNum ) // 1 student1.name = "Aman" // Setting ob1 value to Aman print(student1.name) // Aman let student2 = Student() // Object 2 print(student2.name) // Akash print(Student.section) // A print(Student.day) // Monday