Hi Charles,
Welcome to JavaRanch!
A lot of your explanation is correct, but there are a few key points that are not. The most important one is that
you won't call keyPressed(), and
you won't create a KeyEvent; the AWT event
thread will do these things. You
supply this method, and
Java calls it automatically under certain circumstances.
As to the second line (the body of the method), it doesn't actually do anything observable; it's a "tree falling in the forest" kind of thing. If this came from a book or example code, it's a misleading and silly example.
But you're right that the getKeyChar() method is being invoked on the firstEvent object. This method takes no arguments. It returns a value, which is being ignored, and has no side effects, so when this event handler is invoked, nothing observable will happen. If you wanted to print the actual character, you might replace that second line with
System.out.println(firstEvent.getKeyChar());
It seems to me as if you've gotten a little ahead of yourself as far as trying to understand this code. You might want to back up and get some practice with more basic "chapter 1" stuff before getting to GUI writing.