Перейти к контенту

Разница между абстрактным и конкретным классом в Java

Ниже приведены существенные различия между абстрактным классом и конкретным классом в Java.

Абстрактный класс

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

Пример

public abstract class AbstractExample {
   public abstract int add(int a, int b);
   public abstract int subtract();
   
   public void display(){
      System.out.println("Hello how are you");
   }
}

Конкретный класс

  • Вы можете создать экземпляр конкретного класса.
  • Конкретный класс не имеет каких-либо абстрактных методов.
  • Не обязательно наследовать конкретный класс, чтобы использовать его.

Пример

public class ConcreteClassExample {
   public int add(int a, int b){
      int c = a + b;
      return c;
   }
   public int subtract(int a, int b){
      int c = a - b;
      return c;
   }
   public void display(){
      System.out.println("Hi welcome to Tutorialspoint");
   }
   public static void main(String args[]){
      ConcreteClassExample obj = new ConcreteClassExample();
      System.out.println(obj.add(25, 347));
      System.out.println(obj.subtract(500, 456));
      
      obj.display();
   }
}

Итог

372
44
Hi welcome to Tutorialspoint

Оцени статью

 

Средняя оценка / 5. Количество голосов:

 

Спасибо, помогите другим - напишите комментарий, добавьте информации к статье.

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Помогите улучшить статью.

 

Пока нет комментариев.

Добавить комментарий

Ваш e-mail не будет опубликован.

СайдбарКомментарии (0)