Please enable JavaScript.
Coggle requires JavaScript to display documents.
Знакомство с объектами #6 (Конструктор (В конструкторе допускается…
Знакомство с объектами #6
Конструктор
В конструкторе допускается оператор return, но только пустой, без всякого возвращаемого значения
Конструктор не может иметь модификаторов abstract, final, native, static или synchronized
Ключевое слово this cсылается на другой конструктор в этом же классе. Если используется, то обращение должно к нему быть первой строкой конструктора
Ключевое слово super вызывает конструктор родительского класса. Если используется, должно обращение к нему быть первой строкой конструктора
Если конструктор не делает вызов конструктора super класса-предка (с аргументами или без аргументов), компилятор автоматически добавляет код вызова конструктора класса-предка без аргументов
Конструкторы не наследуются
Объект
Каждый объект после создания существует (живёт) пока хотя бы одна переменная хранит его адрес (на него есть хотя бы одна ссылка)
Чтобы какая-то переменная перестала хранить ссылку на объект – можно присвоить ей значение
null
или же ссылку на другой объект
В Java случайно потерять объект очень сложно – если есть ссылка на него, значит, объект гарантированно жив
Ссылки на объекты нельзя поменять. Нельзя увеличить или уменьшить. Также нельзя создать ссылку на объект – ее можно только присвоить
Метод finalize()
Этот метод вызывается Java-машиной у объекта перед тем, как объект будет уничтожен
В нем можно освобождать ресурсы, используемые объектом
Этот метод есть у класса Object и, следовательно, есть в каждом классе (все классы в Java считаются унаследованными от класса Object и содержат копию его методов)
Но! Java-машина сама решает – вызвать данный метод или нет. Этот метод скорее дополнительная страховка, чем надёжное решение
Static
Статические методы не могут обращаться к нестатическим методам или нестатическим переменным
Для того, чтобы обратиться к статическим методам и переменным не надо передавать никакую ссылку на объект
Иногда бывает нужно, чтобы переменная была в единственном экземпляре
Кроме статических методов есть ещё и статические классы