title: What is an illegal reflective access?
body: <p>There are a lot of questions about illegal reflective access in Java 9.</p>
  <p>I have found plenty of discussion about working around the error messages, but I would love to know what an illegal reflective access actually is.</p>
  <p>So my question is:</p>
  <p>What defines an illegal reflective access and what circumstances trigger the warning?</p>
  <p>I have gathered that it has something to do with the encapsulation principles that were introduced in Java 9, but I can't find an explanation of how it all hangs together, what triggers the warning, and in what scenario.</p>