如果準備給一個方法的參數傳遞一個數值,你可能希望該方法的參數的類型是double類型,這樣一來就可以向該參數傳遞byte、int、long、float和double類型的資料。
如果一個方法的參數是介面類型,我們就可以將任何實作該介面的類別的實例的參考傳遞給該介面參數,那麼介面參數就可以回調類別實作的介面方法。
例如:
interfaceSpeakHello{voidspeakHello();}classChineseimplementsSpeakHello{publicvoidspeakHello(){System.out.println(中國人習慣問候語:你好,吃飯了嗎?);}}classEnglishimplementsSpeakHello{publicxidspeakHello.習慣問候語:你好,天氣不錯!);}}classKindHello{publicvoidlookHello(SpeakHellohello){//介面類型參數hello.speakHello();//介面回呼}}publicclassMain{publicstaticvoidmain(Stringargs[]){KindHellokindHello=KindHellokind ();kindHello.lookHello(newChinese());kindHello.lookHello(newEnglish());}}
運行結果如下:
中國人習慣問候語:你好,吃飯了嗎?英國人習慣問候語:你好,天氣不錯!
注意:如果原始檔再增加若干個類似Chinese和English的類,KindHello類不需要做任何修改。