Java и C#-подобные свойства
Поддерживает ли Java изначально свойства, такие как C#? Или при кодировании на Java, когда вы пытаетесь инкапсулировать переменные, вы вынуждены делать это getVariable()
а также setVariable()
какие-то методы?
Спасибо
5 ответов
нет
У вас нет концепции свойств в языке Java. Вам нужно использовать геттеры и сеттеры..
Java не поддерживает C# -подобные свойства. Вам нужны геттеры и сеттеры, но будьте осторожны, чтобы случайно не дать своему пользователю доступ к инкапсулированным данным, возвращая ссылку на объект вместо ссылки на его копию.
Как говорили другие, ни одна Java не обладает свойствами как таковыми. Принятым методом является использование геттеров и сеттеров. Кстати, в Delphi есть поддержка свойств, очень похожих на C#.
Определенно ничего подобного AutoProperties не поддерживается в Java. Кажется, я не могу найти упоминаний о какой-либо поддержке в будущем.
В прошлый раз, когда я проверял, Java не поддерживает свойства.
Свойства C# похожи на свойства Delphi по той простой причине, что они были вдохновлены свойствами Delphi. Перемещение одного из ключевых людей из команды Borland в Delphi в Microsoft и (помощь) в разработке C#, конечно, не имеет к этому никакого отношения:)
В прошлом году было предложение (на самом деле несколько) о добавлении свойств стиля C# в Java, но сообщество фактически расстроило их как простой синтаксический сахар без реальной добавленной стоимости.