Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Абстракция в Java | Абстрактный класс и метод с примером

Что такое абстракция в Java?

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

В этом уроке вы узнаете-

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

РЕЗЮМЕ — это тип класса в Java, который объявляет один или несколько абстрактных методов. Эти классы могут иметь абстрактные методы, а также конкретные методы. Обычный класс не может иметь абстрактных методов. Абстрактный класс — это класс, который содержит хотя бы один абстрактный метод. Мы можем понять концепцию на примере shape в java. .

Рассмотрим следующую иерархию классов, состоящую из класса Shape, который наследуется тремя классами Rectangle, Circle и Triangle. Класс Shape создан для сохранения общих атрибутов и методов, общих для трех классов Rectangle, Circle и Triangle. calculateArea() — это один из таких методов, который используется всеми тремя дочерними классами и присутствует в классе Shape.

<центр>

<рисунок>

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

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

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

Но как бы выглядел объект Class Shape в практическом мире??

Если вы заметили, что класс Shape служит нашей цели достижения наследования и полиморфизма. Но он не был создан для создания экземпляров. Такие классы могут быть помечены как Абстрактные. . Невозможно создать экземпляр абстрактного класса Java.

Синтаксис:

abstract class Shape{
	// code
}

Возможно, вы НЕ помечаете класс Shape как Abstract, а затем создаете его экземпляр. Но такой объект не будет использоваться в вашем коде и откроет место для потенциальных ошибок. Следовательно, это нежелательно.

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

РЕФЕРАТНЫЙ МЕТОД в Java — это метод, который имеет только определение метода, но не содержит реализацию. Метод без тела известен как абстрактный метод. Он должен быть объявлен в абстрактном классе. Абстрактный метод никогда не будет окончательным, потому что абстрактный класс должен реализовать все абстрактные методы.

Как мы все знаем, формулы вычисления площади для прямоугольника, круга и треугольника разные. Метод calculateArea() должен быть переопределен унаследованными классами. Нет смысла определять его в классе Shape, но нам нужно убедиться, что все классы-наследники имеют этот метод.

Такие методы можно назвать абстрактными.

Синтаксис:

abstract public void calculateArea();

Для абстрактного метода реализация не требуется. Определяется только сигнатура метода.

Пример кода абстракции

abstract class Shape{  
  abstract void calculateArea();  
}  
 class guru99 extends Shape{  
void calculateArea(){System.out.println("Area of Shape");}  
public static void main(String args[]){  
 Shape obj = new guru99();  
 obj.calculateArea();
}  
}

Абстрактный класс в Java:важные моменты

Последнее ключевое слово в Java

Последний модификатор применяется к классам, методам и переменным. Значение final варьируется от контекста к контексту, но основная идея одна и та же.

Пример :- Чтобы узнать абстрактные и окончательные ключевые слова

Шаг 1) Скопируйте следующий код в редактор.

abstract class Shape{
   final int b = 20;
   public void display(){
     System.out.println("This is display method");
   }
   abstract public void calculateArea();
}

public class Rectangle extends Shape{
   public static void main(String args[]){
      Rectangle obj = new Rectangle();
      obj.display();
     //obj.b=200;
  }
  //public void calculateArea(){}
}

Шаг 2) Сохраните, скомпилируйте и запустите код.

Шаг 3) Ошибка =? Абстрактный метод не реализован в классе Rectangle. Чтобы решить эту проблему, раскомментируйте строку № 15.

Шаг 4) Раскомментируйте строку # 13 . Сохраните и скомпилируйте код.

Шаг 5) Ошибка =? переменная b является окончательной

Правила абстрактного метода


java

  1. Абстрактный класс и метод С#
  2. Абстрактный класс Java и абстрактные методы
  3. Учебное пособие по абстрактному классу C # с примером:что такое абстракция?
  4. Метод String Length() в Java:как найти на примере
  5. Метод Java String charAt() с примером
  6. Строка Java содержит () Метод | Проверить подстроку с примером
  7. Метод Java String endWith() с примером
  8. Интерфейс против абстрактного класса в Java:в чем разница?
  9. Java BufferedReader:как читать файл в Java с примером
  10. Алгоритм сортировки вставками в Java с примером программы