Я читал учебник о программировании с объективом C. Я получил общее представление о том, что такое инкапсулирование данных, но детали этого еще не ясны. Может ли кто-нибудь мне помочь? Я изучаю это самостоятельно, поэтому сталкиваюсь с небольшими проблемами в том, чтобы сделать мою концепцию понятной. Спасибо и извините заранее, если это глупый вопрос.Как я могу очистить концепцию инкапсулирования данных?
3
A
ответ
3
Инкапсуляция просто означает, что доступ к внутреннему состоянию объекта разрешен только через определенный интерфейс. В случае Objective-C это включает методы и свойства. Вы можете прочитать свойство в одном из двух способов:
[foo prop]
foo.prop
Они в значительной степени то же самое, с формой является немного более удобным, особенно когда сцепление аксессоров (например, foo.bar.baz.prop
против [[[foo bar] baz] prop]
). У вас также есть два варианта настройки свойств:
foo.prop = 1;
[foo setProp:1];
Единственное реальное различие, которое я знаю, что пунктирная форма (в обоих случаях) требует знания типа, в то время как форма метод не, например:
Foo * foo = …;
[foo setProp:1]; // OK
foo.prop = 1; // OK
id bar = foo;
[bar setProp:1]; // OK
bar.prop = 1; // Barf
Смежные вопросы
- 1. Как я могу очистить QLocalSocket?
- 2. маленькая идея проекта, чтобы очистить концепцию синхронизации
- 3. Метод инкапсулирования
- 4. Как я могу очистить груз?
- 5. Как я могу очистить QFormLayout?
- 6. Как я могу очистить UISession?
- 7. Как я могу очистить переменную?
- 8. Как я могу очистить чертеж?
- 9. Как я могу «очистить» virtualenv?
- 10. Как я могу это очистить?
- 11. Как я могу доказать концепцию «Six Degrees of Separation» программно?
- 12. Как я могу очистить поля после отправки?
- 13. Как я могу очистить pyqt QTableWidget?
- 14. Как я могу добавить концепцию индексирования приложений в своем приложении?
- 15. Как я могу реализовать эту концепцию с помощью mysql?
- 16. Как я могу понять концепцию «каталога пользовательских скриптов»?
- 17. Как я могу очистить строку [dos asm]
- 18. Могу ли я очистить вспышку?
- 19. Как я могу очистить состояние в React.js?
- 20. Как я могу очистить кеш отражения .NET?
- 21. Как я могу очистить этот кадр?
- 22. Как я могу очистить функцию setInterval?
- 23. Как я могу очистить значение от HTML?
- 24. Как я могу вручную очистить журнал повышения?
- 25. Hudson - Как я могу «очистить SVN»?
- 26. C# Unity - Как я могу очистить InputField
- 27. Как я могу очистить маршруты администратора Symfony?
- 28. Как я могу очистить CellList gwt?
- 29. Как я могу полностью очистить стек?
- 30. Как я могу очистить очередь MassTransit?
Какие детали вы не можете понять? OO-программирование - большая тема. –
Инкапсулирующие данные - основная тема, на которой я сосредоточен. в том, что getter и setter, разница между методом Dot и методом доступа. – Sami