繁体   English   中英

Java中的方法声明和定义

[英]Method declaration and defining in java

关于我的疑问,我需要一些建议。 我需要在一个类/文件中声明一个函数,然后在另一个类中定义它,是否可以这样做?

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

使用界面

  • 在该界面中声明您的方法
  • 在类中实现接口(使用Implements子句)
  • 并在课程中定义它们

参见此处,以及此处示例 (来自StackOverflow此处提出的问题之一)

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

在计费模块中

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

在其他模块中:

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

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

现在,如果您的计费模块具有对其他模块类对象的引用,则可以为每个模块调用someMethod (...)

这就是接口的用途。

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

例如:语法

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");
   } 
}

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

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)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM