Buenas!
No tiene nada que ver el tipo con el que definas los atributos de una clase con que luego esa clase sea instanciable o no.
Deberías de mirar algún tutorial sobre Programación Orientada a Objetos para aclararte las ideas.
En tu caso tienes tu clase:
class MiClase {
String nombre;
String apellidos;
List lista;
}
No tienes porque crear ningún constructor si no quieres, java te creará el constructor por defecto, eso si, lista será null, nombre y apellidos serán "".
Si quieres crear tu propio constructor:
public MiClase(){
nombre = apellidos = "";
lista = new ArrayList();
}
ArrayList es un ejemplo, puedes usar cualquier lista que implemente el interfaz List, LinkedList, Vector, etc