假定您具有使用静态定义方法的以下类。
kubeUtils
controllers
objects
每个类都有一些类似的方法
public static void waitUntilServiceIsPresent(String serviceName){
// implementation...
}
public static void waitUntilServiceDeletion(String serviceName){
// implementation...
}
public static void waitUntilServiceIsUpdated(String serviceName){
// implementation...
}
and so on...
因此,在用户视图中,我们需要这样称呼它:ServiceUtils.waitUntilServiceIsPresent(serviceName);
我需要语法糖的东西将使用类链接,但是我不知道我该怎么做。示例:
KubeUtils.ServiceUtils.waitUntilServiceIsPresent(serviceName)
or
KubeUtils.getServiceUtils.waitUntilServicePresent(serviceName)
请记住,我在这些类中只有静态方法,并且我不想使用组合。我的目标是不创建对象就使用此方法。希望,我的解释很清楚。
您可以通过拥有内部类来实现:
public class KubeUtils {
public static class ServiceUtils {
public static void waitUntilServiceIsPresent(String serviceName){
}
}
}
呼叫:
KubeUtils.ServiceUtils.waitUtilServiceIsPresent(...);
我会继续说,我认为这不是好习惯。我将使用包结构来构建您的实用程序类。