比如說:
interface Inter
{
public void function();
}
class Main implements Inter
{
Main(){}
private int n;
public void function()
{
}
public int add(int a,int b)
{
return a+b;
}
public static void main(String[] args)
{
Inter p=new Main();
//這里是可以使用p.function()的,但是可不可以使用p.add()呢??
}
}
1. 不可以使用p.add()
原因:Inter p=new Main();在這里Java虛擬機會把它當成一個Inter對象,而Inter接口中並沒有定義add方法。
要想調用,只有把這個對象強制轉換為Main對象,
Main m = (Main)p;
m.add(3,4);
2. 不行,Inter只有function函數,通過多態,它不能調用add。如果要調用,就要把add加到Inter
