Литмир - Электронная Библиотека
A
A

Объектно-ориентированный подход в состоянии описать все эти сходства и различия.

Давайте использовать машину в качестве примера для дальнейшего рассмотрения концепции объектно-ориентированного подхода.

Вот коллекция автомобилей.

Основы программирования с Java - _91.jpg

Они все, кажется, очень хорошие автомобили, которые мы все хотели бы иметь.

Мы знаем, что автомобиль является своего рода транспортным средством, который имеет определенные свойства, такие как колеса, у него есть двигатель, и он нуждается в топливе, чтобы двигатель работал, и каждый автомобиль имеет владельца.

Автомобиль выполняет определенные функции, например, он может ускориться и замедлиться, он может ехать назад и выполнять повороты, и надеюсь, не будет врезаться в другие автомобили.

И существует собственник для каждого отдельного экземпляра автомобиля, это может быть моя машина, или эти автомобили находятся в собственности других людей, и все эти экземпляры имеют некоторые различия, такие как цвет, количество пассажиров, которые могут поместиться, год выпуска, размер двигателя и т.д.

В объектно-ориентированной терминологии, это можно рассматривать как класс автомобилей.

При этом экземпляры индивидуальных автомобилей являются объектами и характеристики этих объектов, это их атрибуты или свойства, такие как цвет, количество пассажиров, год выпуска, размер двигателя и так далее.

Эти свойства часто называются полями объектов.

Объект также может демонстрировать определенное поведение или действия, которые он может выполнять, например, движение вперед, перемещение назад и поворот.

Эти действия называются методами в объектно-ориентированном программировании.

Обратите внимание, что здесь также может быть иерархия автомобилей, это легковые автомобили, вы могли бы также иметь фургоны, грузовики и внедорожники.

Позже, я представлю идею подкласса и суперкласса, где подкласс может наследовать свойства суперкласса.

Таким образом, вы можете видеть, что объекты являются фундаментальными строительными блоками объектно-ориентированных программ.

В объектно-ориентированных программах, программные объекты используются для моделирования объектов реального мира, которые имеют определенные состояния или атрибуты и поведения или действия.

Давайте теперь посмотрим на классы, объекты и методы в Java.

Мы видели, что класс описывает группу объектов с общими свойствами и поведением.

Например, мы можем определить класс автомобиля, который основывается на общей концепции транспортного средства, которое двигается на колесах и может перемещаться из одного места в другое.

Или мы можем определить класс "смартфонов", это мобильные электронные устройства, которые могут быть использованы для совершения телефонных звонков, веб-серфинга, воспроизведения музыки, отправки SMS и т.д.

Мы можем использовать ключевое слово class, чтобы определить класс в Java.

На самом деле, мы уже использовали ключевое слово class в нашей программе СourseGrade, и я уже упоминал ранее, что все программы Java, это классы.

Основы программирования с Java - _92.jpg

Два выражения здесь объявляют два класса, один для автомобиля, а другой для смартфона, заметьте, что имена Car и SmartPhone являются Java идентификаторами.

Здесь используется верхний CamelCase по соглашению об именах для классов.

Цель определения класса заключается в разработке шаблона для создания объектов.

Т.е. класс – это шаблон для создания объектов.

После того, как класс определен, мы можем создавать экземпляры или объекты в этом классе.

Понятия объект и экземпляр являются взаимозаменяемыми.

В предыдущем примере, в классе автомобилей, могут быть различные экземпляры (или объекты) автомобилей, которые могут принадлежать мне и другим людям.

В классе "смартфон", различные экземпляры могут быть созданы для каждого студента на этом курсе.

Аналогичным образом, если класс студентов определен, экземпляры студентов могут быть созданы для представления каждого студента в классе.

В Java, экземпляры или объекты создаются с помощью конструкторов и ключевого слова new.

Я вернусь к этому позже в лекции.

Как я уже говорил, класс выступает в качестве шаблона или плана для объекта.

Определение класса должно охватить две основные характеристики.

Первая характеристика – это состояния или свойства объекта в классе, которые часто называют полями.

Для объекта автомобиля, поля могут включать имя его владельца и его цвет или местоположение.

Для смартфона, это его марка и модель, такие как iPhone 7 или Samsung Galaxy 5, могут быть сохранены в полях объекта.

2-я характеристика – это поведение объекта.

И объекты демонстрируют свое поведение с помощью методов.

Методы являются операциями, которые могут быть выполнены, чтобы изменить состояние объекта.

Например, чтобы изменить положение автомобиля нужно двигаться вперед или назад, или перевести смартфон в спящий режим, или увеличить громкость.

Прежде чем обсуждать в деталях, как определить поля и методы в Java, давайте сначала посмотрим на простой пример.

Пример

Перед погружением в детальную структуру объектно-ориентированного программирования, я сначала покажу вам пример, чтобы дать вам некоторое представление о том, как объектно-ориентированное программирование может быть использовано для моделирования внутренних состояний и поведения объектов.

Некоторые термины, которые я собираюсь использовать здесь, могут быть для вас в новинку, но не беспокойтесь, мы разберем все из них подробно.

Основы программирования с Java - _93.jpg

В первой строке программы импортируется класс IO, который мы уже обсуждали.

Далее следует блок комментариев, который начинается с / ** и заканчивается * /.

Это является форматом Javadoc.

Это дает краткое описание того, что программа должна делать.

И эта программа определяет класс объектов автомобиль, который может двигаться вперед, назад и поворачивать.

Есть также комментарии в других различных разделах программы.

Я вернусь к документированию программы позже.

Первая строка после комментария является фактическим объявлением класса с именем Car (автомобиль) с помощью ключевого слова class.

Вы видели ключевое слово class раньше, потому что все программы – это Java классы.

Основная часть определения класса начинается с открытой фигурной скобки, и есть также закрытая фигурная скобка в конце программы.

Определение класса начинается с объявления переменных.

Они называются переменными экземпляра.

И эти переменные экземпляра могут быть использованы для моделирования внутренних состояний или атрибутов объектов в этом классе.

Я вернусь к различным типам переменных позже.

Первой объявляется переменная одометр целого типа, и она устанавливается в нуль.

Как вы знаете, одометр является инструментом, который записывает общее расстояние, пройденное транспортным средством.

Второе объявление определяет переменную с именем владельцем типа String.

String на самом деле класс, определенный в Java.

Он представляет строку символов или последовательность символов.

Мы будем использовать много строк в программах Java, и я буду говорить детально о строках позже.

Это объявление также инициализирует владельца как символьную строку "NoName" с NoName, заключенным в паре двойных кавычек. Обратите внимание, что оба объявления начинаются с ключевого слова private.

private является модификатором доступа.

Я вернусь к этому позже.

16
{"b":"773141","o":1}