我知道,我们可以使用Interface refrence来保存它的实现类Object,并且通过使用该refrence变量,我们只能调用该接口内的方法或它的子接口方法,它被子实现类覆盖。
我的疑问是,如何使用该接口引用变量调用所有类类方法,如hashCode()?因为Object类是根类(由类扩展),如果我们调用Object类的任何方法,如hashCode(),...使用任何类参考我们可以访问所有Object方法..但是如何使用任何接口引用变量? /强>
package hemantdhanuka;
public interface Interf {
void m1();
void m2();
void m3();
}
实现子类
public class SubInterf implements Interf{
@Override
public void m1() {
System.out.println(" i am overridden m1() method");
}
@Override
public void m2() {
System.out.println(" i am overridden m1() method");
}
@Override
public void m3() {
System.out.println(" i am overridden m1() method");
}
public void m4(){
System.out.println("i am m4() new method of SubInterf ");
}
public static void main(String[] args){
Interf i=new SubInterf();
i.m1();
i.m3();
//i.m4();// i know its not possible
i.hashCode();**why it is not showing error ??**
}
}