Como criar um getter público e um setter privado para uma propriedade em Kotlin?
Olá! Comecei a aprender Kotlin depois de Java e me deparei com um problema. Em Java, eu costumava criar campos com setter privado e getter público para controlar o acesso aos dados. Por exemplo:
```java
public class User {
private String name;
public String getName() {
return name;
}
private void setName(String name) {
this.name = name;
}
}
```
Em Kotlin, sei que posso escrever `var name: String` e obter automaticamente getter e setter, mas ambos serão públicos. Se eu escrever `private var name: String`, ambos se tornam privados. Como fazer em Kotlin para que o getter seja público (a propriedade possa ser lida externamente) e o setter seja privado (o valor só possa ser alterado dentro da classe)?
Tentei várias opções, mas o compilador reclama. Por exemplo, tentei escrever `public var name: String private set`, mas não funciona. Pode me mostrar como fazer corretamente? E, se possível, mostre um exemplo usando no construtor.
No answers yet.
Faça login para deixar uma resposta