Swift 中命名空間是基于 module 模塊的,而不是像 C# 那樣顯式的指明
每一個(gè) target 就屬于一個(gè) module 模塊,
在一個(gè)模塊中調(diào)用另一個(gè)模塊中的同名類的方法,需要帶上模塊名稱
MyClass.hello()// 當(dāng)前模塊的類的方法
MyFramework.MyClass.hello()//?MyFramework 模塊中 的類的方法
另一種方式可以將兩個(gè)類定義到不同的 struct 結(jié)構(gòu)體中, 調(diào)用的時(shí)候,帶上相應(yīng)的結(jié)構(gòu)體名稱
struct MyClassContainer1{
class MyClass {
class func hello() {
print("hello1")
}
}
}
struct MyClassContainer2{
class MyClass {
class func hello(){
print("hello2")
}
}
}
MyClassContainer1.MyClass.hello()// hello1
MyClassContainer2.MyClass.hello()// hello2
把其中一個(gè)類(MyClass) 放到結(jié)構(gòu)體中,起到分割的左右也是可以的