-------------------------------------------------------------------------------- The anwsers are A,B for the following reason. 1. The string literal "john" is interned and a single instance is maintained so the expression "john" == "john" both refer to the same object and hence it returns true. 2. I will skip this since it is obvious 3. The third statement won't compile. You can't assign a value to a String literal 4. In the fourth case you are comparing a String object with a Button object and hence will return false. Actually the reason it returns false is the way the equals method is usually coded. (This is a recommended practice if you are provide your own equals method for a class) Ex: ... class String { public boolean equals(Object o) { if ( o == null ) { return false; } else if ( !(o instanceof String)) { return false; } else { // do the actual value comparison } } Take a look at java.lang.String to get a better idea...

anu k

Greenhorn

Posts: 2

posted 15 years ago

thanks leena,jane and prakash..it is clear now

Jane Griscti

Ranch Hand

Posts: 3141

posted 15 years ago

anu k, Please read the JavaRanch Name Policy and re-register using a name that complies with the rules. Thanks for your cooperation. ------------------ Jane Griscti Sun Certified Programmer for the Java� 2 Platform