Ed
há 4 dias
Vamos analisar cada uma das assertivas: I. O construtor primário em Kotlin não pode ter nenhum código, portanto o código foi inicializado com a palavra init (bloco de inicialização). Para criar uma instância de um objeto, não é preciso utilizar o famoso operador new como no Java. Falso. O construtor primário pode ter código, e o bloco `init` é usado para inicializações adicionais, mas não é verdade que o construtor primário não pode ter código. II. Para herdar de uma classe, basta utilizar a sintaxe dos dois-pontos, seguida do nome da classe-mãe. Para que a herança possa ser realizada, a classe mãe foi anotada como open, pois, no Kotlin, todas as classes são final por padrão, ou seja, não é possível utilizar herança. O mesmo vale para métodos. Verdadeiro. Esta assertiva está correta. III. Data Classes têm uma sintaxe resumida e não implementa automaticamente as funções: equals() e hashCode(), toString() e copy(). Falso. Data classes em Kotlin implementam automaticamente as funções `equals()`, `hashCode()`, `toString()` e `copy()`. IV. Métodos estáticos – ou métodos de classe, como são chamados – não permitem criar métodos que podem ser chamados diretamente com a sintaxe "Classe.metodo()". Falso. Em Kotlin, métodos de classe podem ser chamados com a sintaxe "Classe.metodo()", desde que sejam definidos como `companion object`. V. Um singleton é um padrão que permite que uma classe tenha apenas uma instância (object) em memória. Para criar um singleton em Java, são necessárias várias linhas de código, mas, em Kotlin, basta utilizar a palavra reservada object em. Verdadeiro. Esta assertiva está correta. Com base nas análises, as assertivas verdadeiras são II e V. Portanto, a alternativa que contém todos os itens verdadeiros é: nenhuma alternativa correta. Se você tiver opções específicas para escolher, por favor, forneça-as para que eu possa ajudá-lo a identificar a correta.