A few problems, 1) you have dupicate class names, so you don't have any way to distinguish which class you refer to. 2) You don't ever call the methodInMainClass() method, so it won't be run. Other than that, no, you can't call interface1 methods on an interface 2 reference. Since none of your classes implement both interfaces, it's not possible to ...