2011-07-03 67 views
1

我無法理解如何在幾個java類中使用相同的函數。例如,我有以下功能:如何在幾個java類中使用相同的函數?

public int plus(int one, int two) { 
    return one + two; 
} 

如何在其他幾個文件(類)中使用它? 我應該在單獨的課程中創建嗎?

回答

2

如果執行總是將是相同的(一個+二),你可能會轉而它變成一個靜態方法,像這樣:

class Util{ 
    public static int plus(int one, int two) { 
     return one + two; 
    } 
} 

然後你就可以調用函數一樣

int result = Util.plus(1,1) 
5

如果你把功能分爲一類和聲明爲靜態

class MathFunctions { 
    public static int plus(int one, int two) { 
    return one + two; 
    } 
} 

你總是可以訪問它像這樣:

Mathfunctions.plus(1, 2); 

如果你有,你必須始終調用非靜態方法它參照您已聲明該方法的類的實際對象。

3

您可以創建Utility類,如

public enum Maths {; 
    public static int plus(int one, int two) { 
     return one + two; 
    } 
} 
+1

+1,使用'enum'代替。 – mre

+0

我對編輯表示歉意.. – mre

0

您應該創建一個類並將該函數添加到該類中。然後在另一個類中調用該函數,例如包含主方法的Test類。

public class Util{ 
    public static int plus(int one, int two) { 
    return one + two; 
    } 
} 

class Test { 
    public static void main(String args[]) 
    { 
     System.out.println(Util.plus(4,2)); 
    } 
} 
0

您創建的這個函數必須在類中。如果你去和另一個類你的創建這個類的一個實例(在同一個包)例如:假設你有這樣的

public class Blah { 
    public int plus (int one, int two) { 
    return one + two; 
    } 
} 

,然後你必須要使用嗒嗒類:

public class otherclass { 
    public void otherfunc{ 
    int yo,ye,yu; 
    Blah instanceOfBlah = new Blah(); 
    yu = instanceOfBlah.plus(yo,ye); 
    } 
} 

您可以在任何其他類中使用此方法來訪問加號函數。如果其他類屬於不同的包,則可能需要導入blah類tho。

0

或者你也可以做這樣的:

class Test 
{ 
    public int plus(int one, int two) 
    { 
     return one + two; 
    } 
} 

然後使用它像:

int i = new Test().plus(1,2); 
相關問題