init()和init之间有什么不同(_:bool)

时间:2016-11-07 04:20:51

标签: swift priority-queue

var LocalFile = "xxx.json"
var Delta = false
var priority = DISPATCH_QUEUE_PRIORITY_DEFAULT

init(){
    priority = DISPATCH_QUEUE_PRIORITY_HIGH
}

init(_:Bool){
    Delta = true
    priority = DISPATCH_QUEUE_PRIORITY_LOW
}

func getList(postData: Dictionary<String, String>){

    let localdata = readfile(LocalFile)
    if (localdata != "" && Delta == false){}
    else{
    }
}

我只是学习Swift的初学者。当我浏览这个类时,我想知道为什么这个类包含2 init()?它如何与“优先级”一起使用?

2 个答案:

答案 0 :(得分:0)

init(){
    priority = DISPATCH_QUEUE_PRIORITY_HIGH
}
  1. 它是default构造函数。这意味着您的实例变量将默认初始化为各自的值。
  2. 此优先级为HIGH(DISPATCH_QUEUE_PRIORITY_HIGH)

    init(_:Bool){
       Delta = true
       priority = DISPATCH_QUEUE_PRIORITY_LOW
    }
    
  3. 1。它是parameterised,构造函数。这意味着您在创建此类对象时正在初始化Delta。

    2。这里优先级为LOW(DISPATCH_QUEUE_PRIORITY_LOW)

答案 1 :(得分:0)

首先,它应该是localFile和delta。 (通知案例)。

其次,这是一个非常复杂的API。我猜测创建者想要两个不同的初始化器,一个具有高优先级,另一个具有初始化delta的低优先级。