Swift程序 展示静态关键字在类中的使用
在Swift中,使用静态关键字来定义或创建只属于类本身而不属于其实例的类型级属性和方法。或者我们可以说,我们可以通过类本身的帮助直接访问类的静态属性和方法,而不是创建类的实例。
算法
- 步骤1-创建一个类。
-
步骤2-在类中使用静态关键字和一个实例属性定义静态属性。
-
步骤3-还要使用和静态关键字定义静态方法和实例方法。
-
步骤4-在类名的帮助下访问静态属性和方法 –
// 访问属性
NewClass.myVariable
// 调用静态函数
NewClass.mynewFunc()
- 步骤5-要访问实例属性和方法,请创建类的实例,然后使用对象的帮助访问它们。
// 创建NewClass的实例
let obj = NewClass()
// 访问实例变量
print(obj.myVar)
// 调用实例函数
obj.myFunc()
- 步骤6-打印输出。
示例
在下面的Swift示例中,我们首先创建一个名为NewClass的类。在类内部,我们必须定义一个名为“myVariable”的静态变量,它可以在不创建实例的情况下访问。我们还定义了一个名为“mynewFunc()”的静态方法,也可以使用类名(而不是实例)调用。除了静态变量和方法之外,我们还在NewClass中定义了实例变量和方法。只有通过NewClass的实例的帮助才能访问它们。
import Foundation
import Glibc
class NewClass {
static var myVariable = "Hello, I am static variable"
var myVar = 50
static func mynewFunc() {
print("Hello, I am static function")
}
func myFunc() {
print("Hello, I am instance function.")
}
}
// 访问静态变量
print(NewClass.myVariable)
// 调用静态函数
NewClass.mynewFunc()
// 创建NewClass的实例
let obj = NewClass()
// 访问实例变量
print(obj.myVar)
// 调用实例函数
obj.myFunc()
输出
Hello, I am static variable
Hello, I am static function
50
Hello, I am instance function.
结论
这就是我们如何展示在类中使用静态关键字的方法。在使用静态关键字时,始终记住您无法从静态上下文访问实例成员,反之亦然,因为静态成员仅与类本身相关,而实例成员与类的各个实例相关联。如果您尝试从静态上下文访问实例成员,则会出错。