title: Property initializers run before 'self' is available
body: <p>Seems like I'm having a problem with something that shouldn't be the case... But I would like to ask for some help.</p>
  <p>There are some explanations here on the Stack I don't get.</p>
  <p>Having two simple classes where one refers to another, as per below:</p>
  <pre><code>class User {
    lazy var name: String = &quot;&quot;
    lazy var age: Int = 0
  
    init (name: String, age: Int) {
        self.name = name
        self.age = age
    }
  }
  
  class MyOwn {
    let myUser: User = User(name: &quot;John&quot;, age: 100)
    var life = myUser.age 
    //Cannot use instance member 'myUser' within property initializer
    //property initializers run before 'self' is available
  }
  </code></pre>
  <p>I get the commented compile error. May someone please tell me what should I do to solve the case?</p>