Alternatives
Not sure what you mean by an "OS language" (Java isn't generally used to write OS's!), but the big attraction of Java is that it is "write once, run anywhere", of course. Well, in theory, anyway.
You could just use C or C++, but after all these years, there is still no definitive common multi-platform library of stuff that will do the graphics and other stuff that Java can do. If there was, then C would be just as much "write once, run anywhere" as Java (though you'd have to compile it, of course). Of course, there ARE libraries that will do anything you like (or you can write your own), and as long as you have the appropriate ones, C (or C++) is still pretty much "write once, run anywhere". But then the same goes for BASIC or FORTRAN or Pascal (please kill me!) or a zillion other high level languages. That's why they're called "high level"; they are, by definition, largely platform agnostic.
If you don't mind a scripted language, then Python has a graphical front end to it, though that's about all I know about it. Still multi-platform though. I'm sure it has a comprehensive collection of other libraries for the other stuff as well. Or there's PHP or Perl (Yuk!), or Ruby or any number of other scripting languages.
...or am I misunderstanding your question?