方法声明和java中的定义

时间:2015-01-21 07:41:10

标签: java methods

我对我的怀疑需要一些建议。我需要在类/文件中声明一个函数并在另一个类中定义它是否可以这样做?

我的实例是我的计费模块已集成到我的应用程序中。我只是从不同的模块接受该模块的一些参数,并在计费模块中声明和定义的函数中处理它。当我将这个计费模块合并到所有其他模块时,我需要在每个模块中运行一组代码,这些代码对于每个模块都是唯一的。所以请建议我在计费模块中声明一个函数的方法,它可以在所有其他模块中定义,它应该在计费模块中可执行..

4 个答案:

答案 0 :(得分:2)

使用接口

  • 在该界面中声明您的方法
  • 在您的课程中实施界面(使用 implements 子句)
  • 并在课程中定义它们

参见here 还有一个example here(来自StackOverflow上的一个问题)

答案 1 :(得分:2)

听起来你应该创建一个声明方法的接口,然后让你想要实现该接口的任何类。

在结算模块中

public interface SomeInterface
{
    public void someMethod (...);
}

在其他模块中:

public class SomeClass1 implements SomeInterface
{
    public void someMethod (...)
    {
        ....
    }
}

public class SomeClass2 implements SomeInterface
{
    public void someMethod (...)
    {
        ....
    }
}

现在,如果您的结算模块引用了其他模块的类对象,则可以为每个模块调用someMethod (...)

答案 2 :(得分:1)

这就是接口的用途。

我们可以创建接口来编写方法声明,然后我们可以实现该接口。每当我们实现一个接口时,都需要覆盖实现类中接口中的所有方法。

例如:语法

public interface NameOfInterface
{
   //Any number of final, static fields
   //Any number of abstract method declarations\
}

//这是一个界面

interface Animal {

   public void eat();
   public void travel();
}
//class is implementing the interface
public class MammalInt implements Animal{

   public void eat(){
      System.out.println("Mammal eats");
   }

   public void travel(){
      System.out.println("Mammal travels");
   } 
}

答案 3 :(得分:1)

这是你想要实现的! 计费模块:定义接受一些要处理的参数的接口。在计费模块中的某处实现此接口。 在其他模块中:接受计费模块接口对象并调用该函数来处理提供的参数。

BILLING MODULE:

public interface myinterface{
  public void process(Object parameter1);
}

public class myinterfaceImpl implements myinterface{
public void process(Object parameter1){
  // process parameter1
}
}

Other Modules
myMethod(myinterface myinterfaceObj){
myinterfaceObj.process(Object myparam1)
}