任务:我想为许多类使用一些方法.方法相同,因此不需要为每个类实现它们.在我的情况下 - 我使用Android SDK,我发送http请求到服务器.
问题:有想法使用这样的结构:
class abstract MethodsCarrier{
public static void method1(){ /*something*/ }
public static int method2(){ /*return something*/ }
}
Run Code Online (Sandbox Code Playgroud)
它有效,没有问题.但我不确定这个课程是否抽象.它是一种正确的方式吗?
我更喜欢final没有公共构造函数的类.这就是sun在Math课堂上做的方式,所以我认为这是在java中执行此操作的传统方式.
但在你的情况下,我会避免静电.静态方法适用于不访问任何外部(或全局可变)状态的无副作用函数.http请求可以访问外部状态.
我将使用此方法定义一个接口,编写一个执行请求的实现,然后使用IoC容器将其注入到单个上下文中的使用代码中.这样你可以模拟界面,因此你不需要在测试时发出http请求.