Return to Video

What Are Java Objects? Pt. 2

  • 0:00 - 0:04
    Мы сделали упрощенную версию
    класса TextView,
  • 0:04 - 0:07
    которая будет сохранена
    в файл TextView.java.
  • 0:07 - 0:08
    Мы его упростили, так что
  • 0:08 - 0:11
    вам будет легче понять,
    как выглядит класс.
  • 0:11 - 0:14
    Он начинается с access modifier.
  • 0:14 - 0:15
    Он помечен как публичный, так что
  • 0:15 - 0:19
    другие активности могут
    использовать этот TextView класс.
  • 0:19 - 0:21
    Дальше, есть класс word.
  • 0:21 - 0:24
    Это указывает Java,
    что это определение класса.
  • 0:24 - 0:26
    Дальше идет имя класса.
  • 0:26 - 0:29
    Имя класса в Java начинается
    с заглавной буквы и дано в CamelCase,
  • 0:29 - 0:34
    так что это ряд слов, начинающихся с
    заглавных букв и написанных без пробелов.
  • 0:34 - 0:37
    Здесь есть еще текст,
    но мы обратимся к нему позднее.
  • 0:37 - 0:39
    Важно, что здесь открывающаяся скобка и
  • 0:39 - 0:42
    затем внизу определения стоит закрывающая.
  • 0:42 - 0:47
    Внутри этого TextView класса
    находится группа переменных.
  • 0:47 - 0:50
    Каждая представляет поле в TextView.
  • 0:50 - 0:53
    Так что у нас есть поле
    для текста TextView.
  • 0:53 - 0:56
    И поле для цвета текста TextView.
  • 0:56 - 0:58
    Есть и другие поля, но
  • 0:58 - 1:01
    помните, что это лишь упрощенная
    версия класса TextView.
  • 1:01 - 1:04
    У нас также есть переменная
    для хранения ссылки
  • 1:04 - 1:06
    на контекст приложения.
  • 1:06 - 1:09
    Вы можете почитать подробнее о контексте
    в заметках преподавателя ниже, но
  • 1:09 - 1:12
    по существу, это способ получить
    информацию о приложении.
  • 1:13 - 1:17
    Например, используя контекст, вы можете
    получить доступ к ресурсам приложения
  • 1:18 - 1:20
    Это методы TextView.
  • 1:20 - 1:24
    Метод setText делает исходные
    данные текстовой строкой.
  • 1:24 - 1:29
    И обновляет глобальную переменную mText
    для использования этого нового значения.
  • 1:29 - 1:32
    Аналогично, setTextColor придает
    исходным данным новый цвет.
  • 1:32 - 1:36
    И обновляет внутреннее
    состояние до этого нового цвета.
  • 1:36 - 1:39
    Tакже есть такие методы,
    как getText и getTextColor,
  • 1:39 - 1:43
    которые возвращают внутреннюю текстовую
    строку или внутренний TextColor.
  • 1:44 - 1:48
    Еще одно, вы, должно быть, заметили,
    что все эти глобальные переменные
  • 1:48 - 1:50
    начинаются с прописной m.
  • 1:50 - 1:52
    M означает переменную member и
  • 1:52 - 1:55
    все это переменные member
    класса TextView.
  • 1:55 - 1:59
    Переменная member - это просто
    другой способ сказать,
  • 1:59 - 2:01
    поле или состояние класса TextView.
  • 2:01 - 2:03
    Это упрощенный класс ImageView.
  • 2:03 - 2:05
    Вы найдете его в файле imageview.java.
  • 2:06 - 2:11
    Он начинается с публичного класса,
    ImageView - имя класса.
  • 2:11 - 2:14
    Затем идут открывающая
    и закрывающая скобки.
  • 2:14 - 2:16
    Из этого складывается
    структура image view.
  • 2:16 - 2:18
    Обычно в ней больше полей,
    чем здесь, но
  • 2:18 - 2:20
    Я просто хочу показать вам пример.
  • 2:20 - 2:24
    Это целочисленная переменная,
    она называется mImageId.
  • 2:24 - 2:26
    M означает переменную member.
  • 2:26 - 2:28
    Здесь хранится ID ресурса для изображения,
  • 2:28 - 2:31
    которое должно быть показано
    в этом image view.
  • 2:31 - 2:34
    Ниже у нас есть конструктор, который
    используется для построения
  • 2:34 - 2:39
    нового объекта image view, он берет
    исходные данные, контекст и
  • 2:39 - 2:41
    затем запускает эти переменные.
  • 2:42 - 2:46
    Далее идет метод под названием setImage,
    он берет исходные данные,
  • 2:46 - 2:50
    ID ресурса для нового изображения, которое
    должно быть показано в этом image view.
  • 2:50 - 2:54
    Внутри этого метода мы обновляем
    внутреннюю переменную для ID изображения.
  • 2:55 - 2:59
    Еще раз, мы создали эти упрощенные
    классы TextView и ImageView,
  • 2:59 - 3:02
    чтобы помочь вам понять идею классов.
  • 3:02 - 3:05
    А теперь посмотрим на реальную
    версию этих классов внутри
  • 3:05 - 3:06
    фреймворка Android.
  • 3:08 - 3:10
    Чтобы посмотреть код Java-классов,
  • 3:10 - 3:13
    вы можете установить
    вот это расширение Chrome.
  • 3:13 - 3:16
    Если вы не используете браузер Chrome,
    то можете посмотреть
  • 3:16 - 3:19
    в заметках преподавателя ниже,
    как получить доступ к этим файлам.
  • 3:19 - 3:20
    Окей.
  • 3:22 - 3:26
    Расширение Chrome установлено,
    теперь, когда я ищу что-то вроде
  • 3:26 - 3:31
    TextView Android и обращаюсь к
    справочным материалам для этого класса,
  • 3:31 - 3:35
    то здесь будет дополнительная ссылка,
    указывающая на источник view.
  • 3:35 - 3:37
    Это действительно для
    продвинутых разработчиков.
  • 3:37 - 3:41
    Если вам любопытно, какой код был
    использован для создания этого TextView.
  • 3:41 - 3:46
    Это TextView Java-файл, который был
    определен кем-то из команды Android.
  • 3:46 - 3:47
    Как вы видите, он довольно длинный и
  • 3:47 - 3:50
    сложный, но все же обладает
    основными составляющими класса.
  • 3:51 - 3:55
    Он начинается с публичного класса,
    затем TextView, имя класса
  • 3:55 - 3:57
    и затем открывающая
  • 3:57 - 4:00
    и закрывающая скобки внизу.
  • 4:01 - 4:04
    Например, мы видим,
    что TextColor - это поле.
  • 4:05 - 4:06
    We also see that is a field.
    Также видим, что Text - это поле.
  • 4:06 - 4:11
    А здесь - конструктор для TextView,
    отправляющий исходные данные в Контекст.
  • 4:11 - 4:16
    Нажав Command+F или Ctrl+F в Windows,
    я смогу попробовать найти
  • 4:16 - 4:20
    settext, aа здесь метод setText.
  • 4:20 - 4:24
    Этот метод установит строковое
    значение TextView и,
  • 4:24 - 4:25
    если я ищу getText и
  • 4:25 - 4:29
    я также вижу, что этот метод возвращает
    текст, который отображает TextView
  • 4:29 - 4:32
    Вы усвоили идею и теперь можете проглядеть
    все это самостоятельно, если хотите.
  • 4:33 - 4:36
    Если я ищу документационную
    страницу ImageView,
  • 4:36 - 4:40
    то кликну на view source, чтобы
    увидеть весь код класса ImageView.
  • 4:40 - 4:43
    Файл выражает публичный класс image view и
  • 4:43 - 4:46
    это - поля, которые составляют
    структуру ImageView.
  • 4:46 - 4:50
    А вот группа методов в конце файла.
  • 4:50 - 4:52
    Код в этом файле также довольно сложный и
  • 4:52 - 4:54
    и состоит из тысяч строк.
  • 4:54 - 4:57
    Впрочем, лучшее в объектно-ориентированном
    программировании - то, что вам не нужно
  • 4:57 - 5:00
    знать все эти детали.
  • 5:00 - 5:04
    Как разработчик, вы можете использовать
    TextView и ImageView в своем приложении.
  • 5:04 - 5:07
    Не зная всех кровавых деталей,
    стоящих за ними.
Title:
What Are Java Objects? Pt. 2
Video Language:
English
Team:
Udacity
Project:
UD837 - Android for Beginners
Duration:
05:09

Russian subtitles

Revisions