possibilty of extracting a tone from MIDI values I have a project of recording human's sound via Android's SoundRecoder API, and then displaying the extracted note on The screen. It is specific for Android platform (can't use Jmusic or Jfugue API as javaSE environment is not supported).

Now suppose I get to record a sound using this API . How can I then deploy FFT to extract notes from this sound?  Basically as it is not pure sinusoidal wave it might involve multiple frequencies and overtones. Are there any good algorithms to do so? If yes, where I can simulate and the last of all whole of the extracted tone should be rendered on musical sheet?
You correctly note that a musical note is usually not just a simple sine wave. Thus, an FFT may only be one of the steps used in a pitch detection/estimation algorithm (there are many: http://en.m.wikipedia.org/wiki/Pitch_detection).  For music, a good place to start might be the research papers published on MIREX: http://www.music-ir.org/mirex/wiki/Audio_Melody_Extraction