繁体   English   中英

如何直接从其他类的库类中访问方法? Java的

[英]How can I directly access methods from my library class in other classes? Java

我有一个称为工具的实用程序类。 在另一堂课中,我如何直接从工具中评估方法,而又不将方法Tools.methodName(); static并且具有Tools.methodName(); 字首?

相反,我只想编写methodName(); 并有这项工作。 我知道你可以用

import packagename.Tools

但是我的IDE仍然希望我将方法更改为static 因此,例如:

实用类:

package jsmash;

public class Tools {
    public boolean expect(char c, int i) {
        return Filler.fileContents[i] == c;
    }
}

我想做的是:**

package jsmash
import jsmash.Tools;
public class Test {
    void use() { 
        expect('c', 32); // directly call the expect method without *Tools.* prefix
    }
}
  1. 使方法static
  2. 静态导入方法

像这样:

public class Tools {
    public static boolean expect(char c, int i) { //dont worry about what this method is actually doing
        if(Filler.fileContents[i] == c) return true;
        else return true;

    }
}

然后使用:

import static jsmash.Tools.expect;
public class Test {
    void use() { 
       expect('c', 32);
    }
}

您还可以简单地:

import static jsmash.Tools.*;

批量导入所有静态方法(和字段)。

首先,您不必添加import jsmash.Tools; 因为工具和测试类在同一包中。 但是,如果在Tools和Test(Test IS-A Tools)之间存在联系,则可以通过简单地扩展Test类(继承)来实现。

package jsmash
public class Test extends Tools{
    void use() { 
       expect('c', 32);
    }

}

暂无
暂无

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

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