Often, you can invoke command with the same option multiple time. For example
java -cp test1 -cp test2
even though the option only accepts one value.
I believe, that the majority of programs then use the last value (test2 in this case).
However, getOptionValue() return the first value for some weired reason.
I believe, you should add a function called getLastOptionValue() (in class CommandLine) and getLastValue() (in class Option) to allow easy access to the last value.