>          String c = new String("a string" + " another one");
>          System.out.println(c);

The challange was:

Store two strings, a and b, in memory. Combine those two strings and
store them in memory. Take the data in memory and send it to the
standard output.

Your code only does:

Store a tring in memory, then send it to the output.

I don't speak Java, so I don't know what the best answer to the
original challange was; perhaps someone can help me out?

I'm sure that most of these problems are static typing problems
anyway, in the original code a and b were never defined as being
strings. This has nothing to do with OOP, it is just advcation for
dynamic typing (or even Duck typing ;)

Douglas