Привязка - это процесс подключения вызова метода к телу метода или определения типа объекта. В Java существует два типа привязки: статическая привязка и динамическая привязка. Я объяснил их один за другим в этом уроке.
Статическое связывание в Java
1. Когда тип объекта определяется компилятором во время компиляции, он называется статическим или ранним связыванием.
2. Также можно сказать, что при статической привязке вызов метода связан с телом метода во время компиляции.
3. Статическое связывание происходит, когда в классе есть какой-либо закрытый, финальный или статический метод.
Давайте рассмотрим один пример, чтобы понять статическое связывание в Java.
Выход
Шоу
Поскольку нет переопределенных методов, очевидно, что все методы будут доступны для объекта локального класса (объекта Demo). Также тип объекта определяется компилятором во время компиляции, поэтому статическое связывание происходит в приведенном выше примере.
Статическое связывание и динамическое связывание в Java - источник изображения |
Динамическое связывание в Java
1. Когда тип объекта определяется компилятором во время выполнения, он называется динамическим или поздним связыванием. Можно также сказать, что при динамическом связывании вызов метода связан с телом метода во время выполнения.
2. Идентификатор ссылки объекта производного класса хранится в ссылочной переменной базового класса. Мы можем получить доступ только к переопределенным методам, личные методы и переменные производного класса недоступны.
3. Динамическое связывание происходит , когда есть переопределены методы или метод наиважнейшая .
2. Идентификатор ссылки объекта производного класса хранится в ссылочной переменной базового класса. Мы можем получить доступ только к переопределенным методам, личные методы и переменные производного класса недоступны.
3. Динамическое связывание происходит , когда есть переопределены методы или метод наиважнейшая .
4. Динамическое связывание используется для достижения абстракции. Мы узнаем об абстракции в следующем уроке.
Давайте рассмотрим один пример, чтобы понять динамическое связывание в Java.
Выход
ребенок
Как вы можете видеть в приведенном выше примере, мы сохраняем ссылочный идентификатор класса Child в ссылочную переменную базового класса. Когда я вызвал метод show (), вызывается метод класса Child и выводится «Child». Если дочерний класс содержит методы, отличные от show (), к ним нельзя получить доступ с помощью переменной b. Для доступа к ним мы должны либо ввести переменную приведения b, либо создать другую переменную класса Child.
надеюсь, что после прочтения этого урока концепция статического и динамического связывания в Java станет вам ясна. Я также поделился видеоуроком, который поможет вам легко понять эти концепции. Если у вас есть какие-либо сомнения и вы нашли что-то неправильное в вышеприведенном уроке, пожалуйста, сообщите об этом, комментируя ниже.
Комментариев нет:
Отправить комментарий