Bom, fugindo um pouco da duvida inicial, mas matando a vontade do amigo.
J2SE = Core do Java
J2EE = Java Enterprise
J2ME = Java para dispositivos moveis, entenda-se celular, palm, geladeria, torradeira, etc.
J2SE sendo o core logo entendemos que J2EE 2 J2ME dependem dele. Então não temos como aprender j2EE e j2ME sem aprender j2SE.
Nao precisa estudar toda a API, como o Thingol falou acima estude o basico da linguagem, depois a API Collections, Threads, etc.
Procure fazer bastante programinhas besta em modo texto mesmo pra ver como funciona o fluxo dos comandos, como a jre interpreta tudo, isso ajuda muito.
Swing eu diria pra deixar pra depois de estar bem afinado no J2SE basico.
Depois sim pense em estudar uma das outras duas areas.
Se fores para J2EE inicie estudando Servlets, JDBC, JSP (sim apesar de muita gente preferir, incluindo eu, outras tecnologias sempre é bom conhecer JSP). Conforme for se aprofundando a curiosidade leva o cara. Nesse ponto ja teras um nivel pra saber o que estudar e como fazer isso.
Só nao tente aprender tudo de uma vez ou achar que fazer programinhas besta pra ver como a jre interpreta os comandos seja coisa dispensavel.
Fora tudo isso, use muito a busca no forum das comunidades brasileiras. Acho que 90% dos problema podem ser solucionados assim.
]['s