Студопедия
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

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

Читайте также:
  1. IV. Выявление, регистрация и учет случаев заболеваний гепатитом С
  2. Абсолютные ссылки
  3. Адреса URL
  4. Адресат живет в другом конце города
  5. Адресация
  6. Адресация в Internet.
  7. Актуарные расчеты при страховании от несчастных случаев
  8. Бланк строгой отчетности должен быть выполнен типографским способом (в том числе пронумерован), в противном случае наличие ККТ обязательно.
  9. Боже, да этот мир явно нам помогает. Во всяком случае, мне.
  10. В Present Perfect, если действие началось в прошлом и продолжается (повторяется) до сих пор, мы тоже можем использовать этот маркер.

Метод equals() же сравнивает содержимое объектов в их текущем состоянии, фактически он реализован в классе object как тождество: объект равен только самому себе. Поэтому его часто переопределяют в подклассах, более того, правильно спроектированные, "хорошо воспитанные", классы должны переопределить методы класса object, если их не устраивает стандартная реализация.

Второй метод класса object, который следует переопределять в подклассах, — метод tostring (). Это метод без параметров, который пытается содержимое объекта преобразовать в строку символов и возвращает объект класса string.

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

Конструкторы класса

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

Такой "метод" называется конструктором класса (class constructor). Его своет образие заключается не только в имени. Перечислим особенности конструктора.

Конструктор имеется в любом классе. Даже если вы его не написали, компилятор Java сам создаст конструктор по умолчанию (default constructor), который, впрочем, пуст, он не делает ничего, кроме вызова конструктора суперкласса.

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

Конструктор не возвращает никакого значения. Поэтому в его описании не пишется даже слово void, но можно задать один из трех модификаторов public, protected или private.

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

Тело конструктора может начинаться:

С вызова одного из конструкторов суперкласса, для этого записывается слово super() с параметрами в скобках, если они нужны;

С вызова другого конструктора того же класса, для этого записывается слово this() с параметрами в скобках, если они нужны.

Если же super() в начале конструктора не указан, то вначале выполняется конструктор суперкласса без аргументов, затем происходит инициализация полей значениями, указанными при их объявлении, а уж потом то, что записано в конструкторе.

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

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




Дата добавления: 2015-09-11; просмотров: 106 | Поможем написать вашу работу | Нарушение авторских прав

Короче говоря, выполняется последовательность операторов | Знатокам Pascal | Третий этап — инициализация (initialization). На этом этапе элементы массива получают начальные значения. Например, | Парадигмы программирования | Рассмотрим подробнее принципы объектно-ориентированного программирования. | Знатокам Pascal | В этой терминологии говорят о наследовании (inheritance) классов, в нашем примере класс Dog наследует класс Pet. | Для того чтобы правильно реализовать принцип ответственности, применяется четвертый принцип объектно-ориентированного программирования — модульность (modularity). | Private Master person; | Public class Chorus( |


lektsii.net - Лекции.Нет - 2014-2025 год. (0.014 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав