Java за неделю. Вводный курс. Валерий Станиславович Яценков
Чтение книги онлайн.
Читать онлайн книгу Java за неделю. Вводный курс - Валерий Станиславович Яценков страница 22
В объектном программировании класс описывает свойства и методы, которые будут присутствовать у объекта, построенного на основе описания класса (экземпляра класса).
Разбирая пример с газонокосилкой, мы подразумевали, что разработчиком класса «газонокосилка» является кто-то другой. В программировании это обычная ситуация. Мы постоянно используем классы и библиотеки сторонних разработчиков. Даже простейшая программа из нескольких строк на языке Java на самом деле обращается к системным классам языкового пакета. Но программистам постоянно приходится разрабатывать собственные классы для решения прикладных задач. В этом нет ничего сложного, но начинающие программисты часто попадают в ловушку чрезмерно глубокой абстракции. Они разрабатывают классы и создают объекты слишком низкого уровня, что порождает путаницу, несовместимость, скрытые ошибки и прочие проблемы, из-за которых у объектного подхода к программированию есть свои противники.
Итак, мы установили, что класс – это описательный шаблон, на основе которого в процессе выполнения программы создается объект класса. В состав объекта класса входят поля и методы, описанные в классе.
Поля – это переменные разных типов, включая ссылки на объекты других классов.
Методы – это именованные блоки команд, выполняемые при вызове метода и предназначенные для обработки полей объекта и внешних переменных.
Поля и методы, описанные в классе, называют членами класса. Запомните это определение.
Поля также часто называют свойствами объекта. В случае с газонокосилкой примерами свойств могут служить название марки, мощность двигателя, количество оборотов, количество топлива в баке. Если марка и мощность это постоянные свойства, то количество оборотов и количество топлива – изменяемые свойства, которые характеризуют мгновенное состояние объекта, но могут меняться с течением времени.
Также у косилки есть методы «завести», «косить», «заглушить». Газонокосилка должна реагировать на нажатие регулятора оборотов, поэтому в метод «косить» мы должны передать аргумент, показывающий