Documented and tested private parameters
diff --git a/doc/index.html b/doc/index.html
index 47091e9..9f6be90 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -147,6 +147,28 @@
 and the field <tt>files</tt> will receive the strings "file1" and
 "file2".
 
+<h2 id="Private_parameters">Private parameters</h2>
+
+Parameters can be private:
+
+<pre class="brush: java">
+public class ArgsPrivate {
+  @Parameter(names = "-verbose")
+  private Integer verbose = 1;
+
+  public Integer getVerbose() {
+    return verbose;
+  }
+}
+</pre>
+
+<pre class="brush: java">
+ArgsPrivate args = new ArgsPrivate();
+new JCommander(args, "-verbose", "3");
+Assert.assertEquals(args.getVerbose().intValue(), 3);
+</pre>
+
+
 <h2 id="Multiple_descriptions">Multiple descriptions</h2>
 
 You can spread the description of your parameters on more than one
diff --git a/src/main/java/com/beust/jcommander/JCommander.java b/src/main/java/com/beust/jcommander/JCommander.java
index 5dcb3d6..e0588d1 100644
--- a/src/main/java/com/beust/jcommander/JCommander.java
+++ b/src/main/java/com/beust/jcommander/JCommander.java
@@ -16,6 +16,11 @@
  * all the annotated fields, parse the command line and assign the fields with the correct
  * values and a few other helper methods, such as usage().
  * 
+ * The object(s) you pass in the constructor are expected to have one or more
+ * @Parameter annotations on them. You can pass either a single object, an array of objects 
+ * or an instance of Iterable. In the case of an array or Iterable, JCommander will collect
+ * the @Parameter annotations from all the objects passed in parameter.
+ * 
  * @author cbeust
  */
 public class JCommander {
diff --git a/src/test/java/com/beust/jcommander/JCommanderTest.java b/src/test/java/com/beust/jcommander/JCommanderTest.java
index 217ac40..7b98061 100644
--- a/src/test/java/com/beust/jcommander/JCommanderTest.java
+++ b/src/test/java/com/beust/jcommander/JCommanderTest.java
@@ -136,6 +136,13 @@
     new JCommander(args, argv);
   }
 
+  @Test
+  public void privateArgs() {
+    ArgsPrivate args = new ArgsPrivate();
+    new JCommander(args, "-verbose", "3");
+    Assert.assertEquals(args.getVerbose().intValue(), 3);
+  }
+
   public static void main(String[] args) {
 //    new JCommanderTest().multiObjects();
     new JCommanderTest().multipleUnparsedFail();