Esse object expression tem diferença de uma variável estática numa classe?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Esse object expression tem diferença de uma variável estática numa classe?
Oi Jefferson, tudo bem ?
Singleton é um design pattern onde você tem apenas uma instância de um objeto pro projeto todo.
Quando implementado em java, é comum usarmos static para defini-lo, algo assim:
public class Objeto {
public static Objeto INSTANCIA;
private Objeto(){}
public static Objeto getInstance() {
if (INSTANCIA == null) INSTANCIA = new Objeto();
return INSTANCIA;
}
}
E o kotlin acabou fazendo essa implementação pra gente, o que chamamos de boilerplate, toda vez que queríamos ter um singleton, era necessário fazer algo parecido.