In che senso tutti i programmi?
iPhone usa Objective-C, le applicazioni per Symbian sono scritte in C++ e quelle di Windows Mobile in più di un linguaggio...
Ovviamente Java (J2ME) gira su tutti questi, ma non lo considero perchè è usato solo per applicazioni più piccole e qualche giochino.
E poi, che io sappia, molte cose non si possono fare in java..