Какое использование абстрактного метода в Java?



Эта статья об абстрактном методе в Java поможет вам узнать, как достичь абстракции при использовании программирования абстрактных классов и методов в Java.

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

В этой статье обсуждаются следующие темы:





как создать случайную строку в Java

Что такое абстрактный класс?

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

Ниже перечислены некоторые ключевые моменты, касающиеся абстрактного класса:



  • Абстрактный класс может иметь конструкторы и статические методы
  • Это может иметь окончательные методы , они заставляют подкласс не изменять тело метода
  • Вы можете использовать абстрактный класс, унаследовав его от другого класса, а затем предоставить реализации абстрактных методов в нем.
  • Если абстрактный класс не имеет реализации метода, всегда лучше использовать интерфейс

Объявленный абстрактный класс может включать или не включать абстрактные методы. Но что такое абстрактный метод?

Что такое абстрактный метод?

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

Вот как абстрактный метод выглядит в Java:



абстрактная общественная пустая среда обитания ()

Ключевые особенности абстрактного метода

Ниже перечислены ключевые особенности абстрактного метода:

  • Абстрактные методы не имеют реализации (тела), у них просто есть сигнатура метода, как показано в приведенном выше примере.
  • Если у класса есть абстрактный метод, он должен быть объявлен абстрактным, обратное неверно.
  • Вместо фигурных скобок в конце абстрактного метода будет стоять точка с запятой ().
  • Если обычный класс расширяет абстрактный класс, тогда класс должен реализовать все абстрактные методы этого класса, или он также должен быть объявлен абстрактным

Пример программы: абстрактный метод в Java

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

package MyPackage // абстрактный класс абстрактный класс Animal {String AnimalName = '' Animal (String name) {this.AnimalName = name} // объявляем неабстрактные методы // он имеет реализацию по умолчанию public void BasicInfo (String details) {System. out.println (this.AnimalName + '' + details)} // абстрактные методы, которые будут // реализованы его подклассами. конструктор Terrestrial (String name) {super (name)} @Override public void Habitat () {System.out.println ('leave on land and')} @Override public void respration () {System.out.println ('respire через легкие или трахею. ')}} class Aquatic extends Animal {// конструктор Aquatic (String name) {super (name)} @Override public voidhabat () {System.out.println (' Он уходит в воду и ') } @Override public void respration () {System.out.println ('дышать через жабры или их кожу.')}} Class AbstractClassDemo {public static voi d main (String [] args) {// создание класса Object of Terrestrial // и использование ссылки на класс Animal. Animal object1 = новый Земной ('Люди') object1.BasicInfo ('Земные существа, они') object1.habitat () object1.respiration () System.out.println ('') // Создание объектов круга класса Animal object2 = новый Aquatic ('Рыбы') object2.BasicInfo ('являются акавтическими существами, они') object2.habitat () object2.respiration ()}}

Вывод:

связанный список в программе c

Метод Базовая информация () это который используется как Наземный и Водный классы. Методы место обитания() и дыхание() являются абстрактными методами и не имеют никакой реализации, только подпись. Наземный и Водный классы должны предоставлять свою собственную реализацию для обоих этих методов. Также обратите внимание, что оба метода начинаются с ключевого слова Абстрактные . На данный момент вам может быть интересно, как абстрактный класс отличается от интерфейс .

Интерфейс в Java

Другой способ достижения абстракция в Java с помощью интерфейсы . Интерфейс - это набор абстрактных методов, у него нет конкретных , в отличие от абстрактного класса. Но в отличие от абстрактного класса интерфейс в Java обеспечивает полную абстракцию. Он может иметь как методы, так и переменные, как и класс. Однако методы, объявленные в интерфейсе, по умолчанию являются абстрактными.

Абстрактные классы и интерфейсы - два основных строительных блокаиз . Хотя оба они в основном используются для абстракции, они сильно отличаются друг от друга и не могут использоваться взаимозаменяемо.

На этом мы подошли к концу статьи «Абстрактный метод в Java». Я рассмотрел один из наиболее часто задаваемых вопросов , который является абстрактным классом в Java.

Убедитесь, что вы тренируетесь как можно больше и верните свой опыт.

Проверьте от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учащихся по всему миру. Есть вопрос к нам? Пожалуйста, укажите это в комментариях к этому «Абстрактному методу в Java» статья, и мы свяжемся с вами в ближайшее время.