Нет, нет.
Вы можете
public void func(){
{
ArrayList l = new ArrayList();
}
System.out.println("Hello");
}
Это дает вам ограниченную область применения using, но нет никакого IDisposable интерфейса для вызова кода завершения. Вы можете использовать try {} catch () {} Наконец {}, но он не имеет смысла использовать. Между прочим, использование финализаторов в Java - плохая идея.