java匿名类使用

经典使用:本例经常用
匿名内部类使用:等于传入一个函数指针,执行一个callback.将子函数中的result,传回给class的成员变量
    

 private List<ConfigData> setConfigValues(...) { 
        handler.apply(new SetAttrAssistant() {//传入匿名对象
            //类成员函数
            public boolean setConfigData(Collection<ConfigData> items) {
            //匿名类,使用外部类的成员变量configDataList保存数据,而items正是子函数计算的result
                configDataList.addAll(items);
            }
        });    
    }
    
    public void apply(SetAttrAssistant assistant) {
        if (assistant != null) {
            List<ConfigData> tupleOfData = Lists.newArrayList();
            for (Map.Entry<String, String> config : profile.entrySet()) {
                ConfigData data = convertConfigData(config.getKey(), config.getValue());
                tupleOfData.add(data);
            }
            assistant.setConfigData(tupleOfData);//执行匿名对象的setConfigData函数。
        }
    }

 

    原文作者:fdsafwagdagadg6576
    原文地址: https://blog.csdn.net/fdsafwagdagadg6576/article/details/88092257
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞