Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
java -вопросы.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
162.15 Кб
Скачать
  1. Стандартные библиотеки Java.

java.lang

Contains classes that are fundamentals to Java (String, Math classes etc.) and all of these are available in your program automatically. You don’t need the import statement to include them.

java.io

Contains classes supporting input/output operations

java.awt

Contains classes that support Java’s graphical user interface (GUI). It enables you to create window-based applications, menus, dialogs etc.

java.awt.event

Contains classes that support event handling

java.awt.image

Contains classes that support image processing

java.applet

Contains classes that enable you to write applets – programs that are embedded in a Web page

java.util

Contains classes that support a range of standard operations for managing collections of data, accessing date and time information, analyzing strings, etc.

java.net

Contains classes that support networking operations

And so and so on…..

  1. Наследование.

extends

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

Конструктор класса-потомка первым делом должен вызывать конструктор класса-родителя. Если этот вызов не написан явно через super, то по умолчанию будет вызваться конструктор без параметров. Если такого конструктора нет – будет ошибка.

Пример: есть класс Animal c атрибутом ID — уникальным идентификационным номером. От этого класса наследуют классы Bird и Horse, оба они имеют унаследованный атрибут с уникальным значением. Теперь создаем класс Pegasus, который унаследован от классов Bird и Horse.

Этот новый класс имеет два уникальных идентификатора - проблема бриллианта. Если мы нарисуем граф наследования, он будет выглядеть как ромб-бриллиант. Такая схема множественного наследования будет работать до тех пор, пока мы не попытаемся получить идентификатор класса Pegasus: в этом случае мы не будем знать точно, который из них нам нужен.

  1. Полиморфизм. Динамическое связывание.

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

  1. Запрещение наследования.

final

  1. Абстрактные классы. // abstract

  2. Иерархия наследования. Универсальный класс Object, его методы.

toString()

Возвращает строку, которая описывает объект текущего объекта. Это будет имя класса, после «@» и шестнадцатеричное представление объекта. Этот метод вызывается автоматически, когда вы объединяете объекты с использованием строковых переменных +.

getClass()

возвращает объект типа класса, который идентифицирует класс текущего объекта.

equals()

Сравнивает текущий объект с объектом ссылается переменная объекта передается в качестве аргумента. Она возвращает верно, только если оба объекта являются одинаковыми. (А не только равных - они должны быть того же объекта) Так оно и определяет, действительно ли два объекта, один и тот же область памяти.

hashCode()

вычисляет значение хэш-код объекта и возвращает его как тип Int.

Может быть обсужден после изучения хэш-таблиц.

notify()

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

notifyAll()

росыпается все потоки, связанные с текущим объекто

wait()

вызывает поток ждать изменений в текущий объект.

Protected methods (java.lang.Object):

clone()

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

finalize()

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]