title: Override interface property with constructor parameter with different name
body: <p>I have this code:</p>
  
  <pre><code>class AnyUsernamePersistentNodePath(override val value: String) : AnyPersistenceNodePath {
      override val key = "username"    
  }
  </code></pre>
  
  <p>and </p>
  
  <pre><code>interface AnyPersistenceNodePath {
      val key: String
      val value: String
  }
  </code></pre>
  
  <p>So far, so good. Now I want parameter <code>value</code> in the constructor to be named <code>username</code>, instead of <code>value</code>. But, obviously, keep overriding interface's property <code>value</code>. Is that possible in Kotlin?</p>
  
  <p>I know that I can do:</p>
  
  <pre><code>class AnyUsernamePersistentNodePath(val username: String) : AnyPersistenceNodePath {
      override val key = "username"
      override val value = username
  }
  </code></pre>
  
  <p>but I'd like to avoid it.</p>