Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Confusion on code

 
Sushanta Chakrabarty
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
public class DDg {

public static void main(String[]args){
fgh f = new fgh();
f.fgr(new Iface(){ public void ggg(){System.out.println("a");}});

}

}
interface Iface{
void ggg();

}
class fgh{
void fgr(Iface I){System.out.println("b");}
}

In the above mentioned program I think I should get "a" as output but I am getting "b". May anyone help?
 
HarrySingh
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
f.fgr(new Iface(){ public void ggg(){System.out.println("a");}});

You are calling fgr() method which takes instance of Iface which is an interface so you have to create an anonymous inner class inside the argument BUT you are never made a call ggg() in your code.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic