Свойства Java и С#

Поддерживает ли Java свойства, такие как С#? Или при кодировании на Java, когда вы пытаетесь инкапсулировать переменные, вам приходится делать это с помощью методов getVariable() и setVariable()?

Спасибо

Ответы

Ответ 1

Нет

У вас нет концепции свойств на языке Java. Вам нужно использовать геттеры и сеттеры.

Ответ 2

Java не поддерживает свойства, подобные С#. Вам нужны геттеры и сеттеры, но будьте осторожны, чтобы вы случайно не предоставили пользователю доступ к инкапсулированным данным, вернув ссылку на объект вместо ссылки на его копию.

Ответ 3

Как говорили другие, ни одна Java не имеет свойств как таковых. Принятый метод - использовать геттеры и сеттеры. С другой стороны, Delphi поддерживает свойства, которые очень похожи на С#.

Определенно ничто, как AutoProperties, не поддерживается в Java. Кажется, не может найти упоминания о какой-либо будущей поддержке.

Ответ 4

В прошлый раз, когда я проверил, Java не поддерживал свойства.

Ответ 5

Свойства С# аналогичны свойствам Delphi по той простой причине, что они были вдохновлены свойствами Delphi. Если один из ключевых людей из команды Borland Delphi перейдет в Microsoft и (помощь), дизайн С#, конечно же, не имеет ничего общего с этим:)

В прошлом году было предложено (по сути, несколько) добавление свойств стиля С# в Java, но они были эффективно сбиты сообществом как простой синтаксический сахар без реальной добавленной стоимости.