Rajan you can find the answer of this question in any book of java.
anyway you wrote
in this case you are creating two references which denoting same object.
a & b both are reference which denoting object abc.
so a==b will compare that both reference are denoting same object Or diff. ?? so the answer is--1
a.equals(b) are checking that the value of these objects are same Or diif so answer is --3
If you do like this
String b= new String("abc”);
now you have two difference object so
a==b will return false Then answer will be