title: Java BeanGenerator property name problem with open parenthesis '('
body: <p>I create a <code>BeanGenerator</code> object and <code>addProperties</code> Like this.</p>
  
  <pre class="lang-java prettyprint-override"><code>final BeanGenerator beanGenerator = new BeanGenerator();
  final Map&lt;String, Class&lt;?&gt;&gt; properties = new HashMap&lt;&gt;();
  properties.put(&quot;name&quot;, String.class);
  properties.put(&quot;`name&quot;, String.class);
  properties.put(&quot;~name&quot;, String.class);
  properties.put(&quot;!name&quot;, String.class);
  properties.put(&quot;@name&quot;, String.class);
  properties.put(&quot;)name&quot;, String.class);
  properties.put(&quot;(name&quot;, String.class); // Problem !!!
  BeanGenerator.addProperties(beanGenerator, properties);
  </code></pre>
  <p>It runs without any errors even if i use informal characters like <code>`~!@#$%^&amp;*)-+=</code> for property name.</p>
  <p>but when i use open parenthes <code>(</code> for property name</p>
  
  <pre class="lang-java prettyprint-override"><code>java.lang.IllegalArgumentException: Name 'get(name' is invalid
  </code></pre>
  <p>is occurred.</p>
  <p>Why ? and how property name can contains <code>(</code> ?</p>