Cast em ArrayLis

Olá pessoal… como faço para dar um cast em um ArrayList, ou em todos os objetos do ArrayList??

ex:

ArrayList<Cliente> clientes = getList("SELECT * FROM CLIENTE");

sendo que getList(String) retorna ArrayList(ITabela)
e a classe Cliente implementa a interface ITabela

ArrayList<Cliente> clientes = (ArrayList<ITabela>)getList("SELECT * FROM CLIENTE");  

tentei isso já tb!! =/

olha o erro que dá:
cannot cast class java.util.ArrayList<src.database.interfaces.ITabela> to class java.util.ArrayList<src.database.model.Cliente>

Bom sua colection há objetos Clientes ou ITabela?

Vc nao pode realizar um Cast ITabela para Cliente em tempo de execução a JVM irá verificar se há sentido esse Casting

Outra duvida getList retorna uma Collection de Clientes?

getList retorna um Collection de ITabela

como Cliente é-um ITabela (pois Cliente implementa a interface ITabela),
o cast
Cliente c = (Cliente)objetoITabela;
é válido.

mas o cast
ArrayList clientes = (ArrayList)arrayListDeObjetosITabela;
não é válido.

consegui resolver agora: não sei se é gambiarra mas deu certo :smiley:
ArrayList clientes = (ArrayList)(Object)getList(“SELECT * FROM CLIENTE”);