title: Why would I use Lombok-Annotation @NonNull?
body: <p>Lombok offers the <a href="https://projectlombok.org/features/NonNull" rel="noreferrer">annotation</a> <code>@NonNull</code> which executes the nullcheck and throws a NPE (if not configured differently).</p>
  
  <p>I do not understand why I would use that annotation as described in the <a href="https://projectlombok.org/features/NonNull" rel="noreferrer">example</a> of that documentation:</p>
  
  <pre><code>private String name;
  public NonNullExample(@NonNull Person person) {
      super("Hello");
      if (person == null) {
        throw new NullPointerException("person is marked @NonNull but is null");
      }
      this.name = person.getName();
    }
  </code></pre>
  
  <p>The NPE would be thrown anyway. The only reason here to use the annotation imo is if you would want the exception to be different from a NPE.</p>
  
  <p>EDIT: I do know that the Exception would be thrown explicitly and thus 'controlled', but at least the text of the error message should be editable, shouldn't it?</p>