Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java-如何在每个方法上检查方法 公共类测试 { 私有静态布尔启用=true; 公共静态布尔值isEnable() { 返回使能; } 公共静态字符串getName(int-id) { 如果(isEnable()) 返回“测试”; 其他的 返回null; } 公共静态ArrayList getVars(int-id,String-str) { 如果(isEnable()) { ArrayList=新建ArrayList(); 列表。添加(“测试1”); 列表。添加(“测试2”); 列表。添加(“测试3”); 退货清单; } 返回新的ArrayList(); } //更多方法包含启用检查 }_Java - Fatal编程技术网

java-如何在每个方法上检查方法 公共类测试 { 私有静态布尔启用=true; 公共静态布尔值isEnable() { 返回使能; } 公共静态字符串getName(int-id) { 如果(isEnable()) 返回“测试”; 其他的 返回null; } 公共静态ArrayList getVars(int-id,String-str) { 如果(isEnable()) { ArrayList=新建ArrayList(); 列表。添加(“测试1”); 列表。添加(“测试2”); 列表。添加(“测试3”); 退货清单; } 返回新的ArrayList(); } //更多方法包含启用检查 }

java-如何在每个方法上检查方法 公共类测试 { 私有静态布尔启用=true; 公共静态布尔值isEnable() { 返回使能; } 公共静态字符串getName(int-id) { 如果(isEnable()) 返回“测试”; 其他的 返回null; } 公共静态ArrayList getVars(int-id,String-str) { 如果(isEnable()) { ArrayList=新建ArrayList(); 列表。添加(“测试1”); 列表。添加(“测试2”); 列表。添加(“测试3”); 退货清单; } 返回新的ArrayList(); } //更多方法包含启用检查 },java,Java,如何选中单个方法中的enable(启用)和从所有方法中跳过,除非您使用的是一些时髦的面向方面的库,例如无法在类中的每个方法之前/之后自动插入代码 您需要“手动”执行此操作,正如您在示例代码中所示。方法是否必须是所有的static?是的,所有方法都是staticOK,不是最好的设计,但我想您有这样做的理由。如果类实现了一个接口且方法不是静态的,那么您可以为类创建一个代理并截获每个方法调用,以便在其中添加启用/禁用的逻辑。如果类实现了一个接口且方法不是静态的,然后OP可以创建一个代理,拦截所有方法并

如何选中单个方法中的enable(启用)和从所有方法中跳过,除非您使用的是一些时髦的面向方面的库,例如无法在类中的每个方法之前/之后自动插入代码


您需要“手动”执行此操作,正如您在示例代码中所示。

方法是否必须是所有的
static
?是的,所有方法都是staticOK,不是最好的设计,但我想您有这样做的理由。如果类实现了一个接口且方法不是静态的,那么您可以为类创建一个代理并截获每个方法调用,以便在其中添加启用/禁用的逻辑。如果类实现了一个接口且方法不是静态的,然后OP可以创建一个代理,拦截所有方法并实现逻辑启用vs!启用。但我认为,对于启用/禁用这样一个简单的事情来说,这太麻烦了。
public class Test
{
    private static boolean enable = true;

    public static boolean isEnable()
    {
        return enable;
    }

    public static String getName(int id)
    {
        if(isEnable())
            return "test";
        else
            return null;
    }

    public static ArrayList<String> getVars(int id, String str)
    {
        if(isEnable())
        {
            ArrayList<String> list = new ArrayList<String>();
            list.add("test1");
            list.add("test2");
            list.add("test3");
            return list;
        }

        return new ArrayList<String>();
    }

    //and more method contains enable check
}