ho risolto mettendo hashmap come static.
grazie mi illumini sempre 
-Solo un ultimo chiarimento se non ti disturbo molto.
io ho questa map che mi deve mantenere dei dati comunti a tutto il programma, non mi importa istanziare diversi oggetti visitable, perche il suo compito è solo quello di riempire la map e controllare che ci siano dei dati dentro, mi conviene gestirla come static oppure è meglio gestire la classe come singleton.
come questa :
codice:
package web.jsoup;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
/**
*
* Gestione delle url da visitare
*
*/
public class UrlToVisit{
private Map<String, Record> linkDaVisitare = new LinkedHashMap<String, Record>();
private UrlToVisit(){
}
//bill pugh technique singleton
private static class Instance{
private static final UrlToVisit INSTANCE = new UrlToVisit();
}
public static UrlToVisit getIstance(){
return Instance.INSTANCE;
}
/**
* @description aggiunge elementi nella map
* @param key URL da visitare
* @param value oggetto di tipo URL
*/
public void setLinkDaVisitare(String key, Record value) {
this.linkDaVisitare.put(key, value);
}
/**
*
* @return Map
*/
public Map<String, Record> getLinkDaVisitare() {
return linkDaVisitare;
}
/**
* @description prende il primo elemento dalla map e poilo elimina dalla map
*
* @return objcet V
*
*/
public Record next(){
System.out.println(linkDaVisitare.size());
Map.Entry<String, Record> next = linkDaVisitare.entrySet().iterator().next();
String key = next.getKey();
Record value = next.getValue();
linkDaVisitare.remove(key);
return value;
}
public boolean containsKey(String url){
return linkDaVisitare.containsKey(url);
}
public boolean isEmpty(){
return linkDaVisitare.isEmpty();
}
}
/*
public class UrlToVisit {
private Set<String> linkDaVisitare = new HashSet<String>();
public void add(String val){
this.linkDaVisitare.add(val);
}
public void addAll(Collection<? extends String> c){
this.linkDaVisitare.addAll(c);
}
public Set<String> getLinkDaVisitare(){
return this.linkDaVisitare;
}
public boolean isEmpty() {
if(this.linkDaVisitare.size()> 0 ){
return false;
}
else{
return true;
}
}
public String next(){
String next = this.linkDaVisitare.iterator().next();
this.linkDaVisitare.remove(next);
return next;
}
}
*/
comunque ti ringrazio davvero ogni volta mi aiuti moltissimo, e scusa se faccio domande banali ma sono un novellino che si sta innamorando di java