Я очень новичок в Kotlin и пытаюсь перенести в него один проект с Java. Я немного запутался в свойствах Kotlin и методах получения / установки для них, а также в области видимости.
Чего я хочу добиться:
public class Foo {
private int number;
public int getNumber() {
return number;
}
public void increment() {
number++;
}
}
Так что в основном мне нужно создать класс с частной собственностью number
. Это свойство должно быть доступно общедоступному получателю, но оно не должно иметь установщика. Кроме того, это свойство должно быть внутренне изменяемым, чтобы его значение можно было изменить с помощью некоторого метода, например increment()
.
Насколько я понимаю, я не могу объявить его как val
, потому что в этом случае он будет полностью неизменным, даже внутри экземпляра класса, поэтому я не могу увеличить его. Похоже, это должно быть var
. Но тогда я не вижу возможности сделать само свойство равным private
, а получатель для этого свойства - public
, потому что кажется, что свойства и их получатели / установщики должны иметь одинаковую область видимости ...