关于接口跟类的区别

关于接口和类的区别
其实接口可以当做返回值,把接口当成一个类来用旧好了,而且是父类,下面的例子很清楚说明了。
interface iface
{
void callfn(int i);
}



class one implements iface
{
public void callfn(int a)
{
  System.out.println("调用一"+a);
}
}


class two implements iface
{
public void callfn(int a)
{
  System.out.println(" 调用二"+a); 
}
}


class TT
{
public static void main(String arfs[])
{
iface i=new one();
two j=new two();
i.callfn(100);
i=j;
i.callfn(200);
}
}


运行结果是:
调用1100
调用2200


有人说的很明白:

接口也是类的,你编译以后,他的扩展名也是CLASS.
iface是父类,相当于动物.
one是继承的子类,相当于猫
two也是继承的子类,相当于狗.
iface i=new one();相当于猫是一种动物.对的吧
two j=new two();产生一个对象,比如是狗

i=j 相当于狗也是一种动物.对的.

如果上面改成one,这里就会出错,猫不是狗,所以就有错啦