La diferencia entre ArrayList list = new ArrayList() y Listlt list = new ArrayListlt ()
La diferencia entre List y ArrayList
List es una interfaz y ListArray es una clase.
ListArray hereda e implementa List.
Por lo tanto, List no se puede construir, pero puede crear una referencia a List como se indicó anteriormente y ListArray se puede construir.
Lista lista; //Lista correcta=null;
Lista lista=nueva Lista(); // Uso incorrecto
Lista lista = nueva ArrayList () ; Esta oración crea un objeto ArrayList y lo rastrea hasta la Lista. En este momento es un objeto List. Algunos ArrayList tienen propiedades y métodos que List no tiene, por lo que ya no se pueden usar.
Y ArrayList list=new ArrayList(); al crear un objeto se conservan todas las propiedades de ArrayList.
Este es un ejemplo:
import java.util.*;
clase pública TestList{
public static void main(String) [] args){
Lista lista = nueva ArrayList();
ArrayList arrayList = nueva ArrayList()
list.trimToSize(); Error, no existe tal método.
arrayList.trimToSize(); //Este método está disponible en ArrayList.
}
}
Compílalo y sabrás el resultado.
Si se ve así:
List a=new ArrayList();
Entonces a tiene todas las propiedades y métodos de List y ArrayList y no los tendrá. reducirse
p>
Si List y ArrayList tienen los mismos atributos (como int i) y el mismo método (como void f()),
entonces a.i llama a i en Lista p>
a.f() llama a f() en ArrayList;