Literais longos em Java

Portanto, lendo a documentação, ele afirma que, se você declarar um literal int com um L no final, ele será lido por muito tempo. Aqui está minha pergunta: existe alguma diferença entre isso e apenas nomear o tipo por muito tempo? Por exemplo:

int x = 100L;
VS.
long x = 100;

A mesma coisa?