Java回调-获取参数

Java回调-获取参数,java,Java,我有 公共接口回调{ 公共接口回调{ 公共无效回调(T); } public void已注册(最终字符串用户名,最终回调){ PreparedStatement perparedStatement=connection.prepareStatement(“从“+table+”中选择名称,其中名称=?”; perparedStatement.setString(1,用户名); if(perparedStatement.executeQuery().next()){ perparedStatemen

我有

公共接口回调{
公共接口回调{
公共无效回调(T);
}
public void已注册(最终字符串用户名,最终回调){
PreparedStatement perparedStatement=connection.prepareStatement(“从“+table+”中选择名称,其中名称=?”;
perparedStatement.setString(1,用户名);
if(perparedStatement.executeQuery().next()){
perparedStatement.close();
registeredCache.put(用户名,true);
}否则{
perparedStatement.close();
registeredCache.put(用户名,false);
}
使用MySQL--;
如果(使用MySQL==0){
closeConnection();
}
callback.callback(registeredCache.get(registeredCache.get(用户名));
但我要找出如何理解这个论点。第一次是回电话

public interface CallBack<T> {

public interface Callback<T> {
   public void callback(T t);
}

public void isRegistered(final String username, final Callback<Boolean> callback){
PreparedStatement perparedStatement = connection.prepareStatement("SELECT name FROM " + table + "     WHERE name = ?");
                    perparedStatement.setString(1, username);
                    if(perparedStatement.executeQuery().next()){
                        perparedStatement.close();
                        registeredCache.put(username, true);
                    }else{
                        perparedStatement.close();
                        registeredCache.put(username, false);
                    }
                    usingMySQL--;
                    if(usingMySQL == 0){
                        closeConnection();
                    }
                    callback.callback(registeredCache.get(registeredCache.get(username)));
lobb.instance.MySQL.isRegistered(sender.getName(),new CallBack()){
@凌驾
公共无效回调(){
}
});
我的好友试图解释它,但他说他解释得太差了,让我在这里问。接口与public void方法位于不同的类中。

如果接口是:

    Lobby.instance.MySQL.isRegistered(sender.getName(), new CallBack<Boolean>(){

                        @Override
                        public void CallBack(){

                        }
                    });
public interface Callback<T> {
   public void callback(T t);
}
Callback<Boolean> callback = new Callback<Boolean>() {
    @Override
    public void callback(Boolean parameter) { 
        // your code here
    }
};