是否有任何方法可以编写具有相似参数的许多函数?

时间:2016-05-22 04:24:20

标签: java android

在最近的项目中,我必须在同一个functions中编写大量class,其中包含类似的前几个参数,如下所示:

doA(string t, int x);
doB(string t, int x, object y);
....
doN(string t, int x, object... ns);

我们是否可以使用function通用doA()函数,以便extend doA函数必须具有2个参数string t, int x的任何函数?作为doB extends doA(object y)代替上面的doB()

2 个答案:

答案 0 :(得分:0)

您无法扩展方法签名。在Java中extends允许类和接口;不是方法。要在多个方法之间共享公共参数,您可以将它们更改为实例变量。

e.g。

class YourClass {

   String t;
   int x;
}

答案 1 :(得分:0)

是的,如果您这样做:

class A{
    // not accessible by child
    private void doA(int a){
        ...
    }
    // accessible by child and B can be null
    public void doA(int a, Long B){
          doA(a);
    }
 }

 class B extends A{

     @override
     public void doA(int a, Long b){
          ...
     }
 }

我希望我的问题是正确的。

如果您需要访问A的私有方法,可以使用反射更改其辅助功能。