Q:

Is JAVA necessary for android development?

I know C, C++, javascript and most web languages like php,ruby etc.. and web frameworks.
I am a little bit aware of eclipse ide for javascript and c/c++ developers, so are they having equivalent control as of java?
And is eclipse the only ide available for android development?

A:

Java is the standard way of writing Android apps, but it's not strictly necessary. For example, there's also Xamarin.Android which lets you write Android apps in C# - although it will still fire up a Dalvik VM behind the scenes, as the Android "native" controls are in Java. Using Java is probably the simplest option. To use other languages and still take advantage of the native controls, you'll need to find some kind of bridge (in the same way that Xamarin.Android is a bridge) - and you may not find it's available in the language you prefer.
Additionally, you'll find pretty much all the examples and tutorials for Android are written in Java, so it's lower friction in that sense too.
As for IDEs, you don't have to use Eclipse - I believe that Android Studio (currently in preview) is based on IntelliJ.

