2016-04-29 145 views
-2

我有一個學校的程序分配,使用接口將溫度從華氏度轉換爲攝氏度。我想我的問題是我把代碼放在界面上還是放在實際的類中?Java中接口的實現

我已經和我的教授談過了,他沒有太多的幫助。不尋找任何代碼,只知道我應該把代碼放在哪裏。

package program5; 
public class program5 implements Interface2 
{ 

    public void Temperature_Convertor() 
    { 
    //Implementation of Temperature_Converter(); 

    } 

    public void Temperature_Print() 
    { 
    //Implementation of Temperature_Print(); 
    } 

    public static void main(String[] args) 
    { 

    } 
} 

現在我的兩個接口

首先一個,

package program5; 
public interface Interface1 
{ 
    public static void Temperature_Convertor() 
    { 

    } 
} 

,第二個

package program5; 
public interface Interface2 extends Interface1 
{ 
    public static void Temperature_Print() 
    { 

    } 
} 

同樣不找任何代碼,只是不知道放在哪裏。再次感謝!

+2

https://docs.oracle.com/javase/tutorial/java/IandI/createinterface.html – 2016-04-29 16:05:24

+0

太謝謝你了 –

+0

你使用IDE嗎?接口不能有方法體。 –

回答

0

接口描述您的實施類(program5)將執行的一種行爲類型。實際工作應該在program5中完成 - 你的任務中的評論(它說「//實現」),甚至說在那裏做。

-1

接口定義你想要做的事情,而不是如何去做。請參閱link。注:方法的名稱應以小寫字母開頭。

0

在你的界面,做到這一點 -

Temperature_Converter方法需要1個值(F溫度)上下工夫,併產生一個結果(在C的溫度)。所以改成這樣 -

public interface Interface2 { 
    public double Temperature_Converter(double tempInF); 
} 

同樣,Temperature_Print方法都需要一個值打印 -

public interface Interface1 { 
    public void Temperature_Print(double temp); 
} 

現在,你的主程序(program5)需要完成這兩項任務(轉換和打印),因此它必須實現兩個接口 -

public class program5 implements Interface1, Interface2 { 

    public double Temperature_Converter(double tempInF) { 
     double tempInC = .....;  // Your implementation 
     return tempInC; 
    } 

    public void Temperature_Print(double temp) { 
     .....  // Your implementation 
    } 

    public static void main(String[] args) { 

    } 
}