There are possibly three things going wrong. The first is that you're not telling System.out what encoding you want to use to print. It doesn't matter if you've correctly stored the characters in a
String, the output system still needs to know what encoding you want to print the data in.
The second problem is that even if your program prints in the encoding you want, the program that's receiving the data (probably the command prompt, or maybe your
IDE console) may not expect this encoding, and interpret the data incorrectly.
The third problem is that even if the console understands exactly what character you want to print, its font does not have a graphical glyph to represent the character, and displays it with a surrogate instead.
I recommend you write a small GUI with a text area, that uses the MS Gothic font. Now try to append different characters to it.