title: What does the "required" keyword in Swift mean?
body: <p>Take the following example:</p>
  
  <pre><code>class A {
      var num: Int
  
      required init(num: Int) {
          self.num = num
      }
  }
  
  class B: A {
      func haveFun() {
          println("Woo hoo!")
      }
  }
  </code></pre>
  
  <p>I've marked <code>A</code>'s <code>init</code> function as <code>required</code>. What exactly does this mean? I completely omitted it in the subclass <code>B</code> and the compiler doesn't complain at all. How is it required, then?</p>