Java Abstract Classes and Methods

JK JK 2038 
Created at
Updated at  
7,886 0 0

Data abstraction is the process of hiding certain details and showing only essential information to the user.
Abstraction can be achieved with either abstract classes or interfaces (which you will learn more about in the next chapter).

The abstract keyword is a non-access modifier, used for classes and methods:

  • Abstract class: is a restricted class that cannot be used to create objects (to access it, it must be inherited from another class).
  • Abstract method: can only be used in an abstract class, and it does not have a body. The body is provided by the subclass (inherited from).

An abstract class can have both abstract and regular methods:

abstract class Animal {
  public abstract void animalSound();
  public void sleep() {
    System.out.println("Zzz");
  }
}

From the example above, it is not possible to create an object of the Animal class:

Animal myObj = new Animal(); // will generate an error

To access the abstract class, it must be inherited from another class. Let's convert the Animal class we used in the Polymorphism chapter to an abstract class:

Remember from the Inheritance chapter that we use the extends keyword to inherit from a class.

// Abstract class
abstract class Animal {
  // Abstract method (does not have a body)
  public abstract void animalSound();
  // Regular method
  public void sleep() {
    System.out.println("Zzz");
  }
}

// Subclass (inherit from Animal)
class Pig extends Animal {
  public void animalSound() {
    // The body of animalSound() is provided here
    System.out.println("The pig says: wee wee");
  }
}

class Main {
  public static void main(String[] args) {
    Pig myPig = new Pig(); // Create a Pig object
    myPig.animalSound();
    myPig.sleep();
  }
}

 

Below YouTube content might be helpful for your better understanding:

 

 

Tags Java Abstract Classes and Methods Java Abstraction Facebook X
Comments 0
  1. Java Servlet Example
    7,192
  2. How do I replace content that based on the HTML UI Template
    7,227
  3. Creating a simple Java Servlet (Web Server Page) with Apache Maven on Microsoft Windows
    7,264
  4. Dataset of California Foodbanks
    7,242
  5. Java Tutorials associated with AP Computer Science A
    7,764
  6. Java Inner Classes
    7,155
  7. Java Polymorphism
    7,133
  8. Java Inheritance (Subclass and Superclass)
    7,248
  9. Java Packages
    7,254
  10. Java Classes and Objects
    7,201
  11. Java Recursion
    7,264
  12. Java Scope
    7,197
  13. Java Methods
    7,171
  14. Java Arrays
    9,027
  15. Java While Loop/Do While Loop/For Loop/For-Each Loop/Break/Continue
    8,034
  16. Java Switch Statements
    7,505
  17. Java Short Hand If...Else (Ternary Operator)
    7,678
  18. Java If ... Else
    7,503
  19. Java Math
    7,530
  20. Java Variables
    7,576
  21. Java Comments
    8,202
  22. The Print() Method
    7,228
  23. Java Syntax
    7,554
  24. Java Getting Started
    7,500
Recently updated
  1. Comprehensive Guide to Recent Critical PHP Vulnerabilities
    798
  2. How to Check Your UIUC Graduation Progress Using DARS Audit
    705
  3. Michael Jackson's Billie Jean
    375
  4. Meet A2O Lite: Korea's Newest K-Pop Cuties with Addictively Catchy Melodies
    314
  5. Why You Can't Stop Watching Jack Bryan's Beatbox Gaming Shorts
    308
  6. Song So-hee: The Soulful Voice Touching Hearts Through Korean Music
    335
  7. Watch This Dazzling Dancer’s Mind-Blowing Moves
    345
  8. Bootstrap vs. Tailwind CSS: Origins, Features, Pros & Cons, and How to Choose the Right Framework
    369
  9. The Complete Guide to Golang: History, Features, Real-World Uses, and Code Examples
    1,204
  10. Telemetry vs. Analytics: Understanding the Difference and Why It Matters
    518
  11. The Evolution and Production Reality of Agentic AI
    404
  12. How to Activate or Waive Your UIUC Student Health Insurance
    515
  13. Complete Guide to Building a Machine Learning Model
    525
  14. My life cuts at Las Vegas during Thanksgiving day holiday
    7,590
  15. The Cybercab Transformation: From Autonomous Taxi to Mobile Base Station
    558
  16. Harness vs. OpenClaw: Two Very Different "Agents"
    1,323
  17. Clean Python Environments: The Power of venv vs. Docker
    1,078
  18. What is Docker? Why is Docker also useful in a development environment?
    791
  19. UIUC 2026-2027 Academic Calendar
    1,973
  20. How to Build Llama 3 AI Apps with Python: Setup & User Prompts
    1,044
  21. Open-Source LLMs: The AI Revolution
    960
  22. Resume 2.0: Leveling Up for My First Software Gig
    2,899
  23. Not everyone will understand what this man just did
    2,381
  24. UIUC Dorm Guide: Find Your Perfect Fit !!
    1,829
  25. Unpacking IU's Shopper
    960
  26. Jackie Chan's Police Story: The Action Masterpiece
    837
  27. The IVE Story: Identity, 'I AM' Charts, and Influence
    1,167
  28. Tech Visionaries who graduated at UIUC - You are the Next Turn
    1,367
  29. Open Databases for Sex Crime Occurrences in the U.S.
    941
  30. Automatically copy text to the clipboard when dragging the mouse in the Cursor
    3,317
  31. My First Day at University of Illinois-Urvana Champaign
    1,360
  32. Sand, Sea, and a Splash of Fun at Newport Beach: A Family Adventure
    8,383
  33. Sun, Rocks, and Adventure: A Day at Joshua Tree National Park
    8,459
  34. Sipping the Stars: My Starbucks Adventure
    10,091
  35. Exciting explore at Sequoia National Park
    7,844
  36. My Life Shot at Death Valley
    2,020
  37. Ip Man fights with Muay Thai Master
    1,115
  38. Mad Clown - Don't Die
    1,230
  39. How to get Student Enrollment and Degree Verification at UIUC
    5,747
  40. LAX Thanksgiving Rush: A Joyful Reunion
    1,066
  41. ZO ZAZZ(조째즈) - Don`t you know (모르시나요) (PROD.ROCOBERRY)
    1,339
  42. FISHINGIRLS Unleashes Energetic EP 'Funiverse' Featuring Signature Track 'Fishing King'
    1,138
  43. 10CM - To Reach You (너에게 닿기를)
    1,317
  44. Feeling weak? Transform yourself at the UIUC ARC!
    1,722
  45. BOYNEXTDOOR - If I Say I Love You
    1,357
  46. The Future of Software Engineer - AI Engineering
    1,078
  47. G Dragon x Taeyang (Eyes Nose Lips, Power, Home Sweet Home, GOOD BOY) - LE GALA PIÈCES JAUNES 2025
    1,090
  48. Lie - Legend song by BIGBANG
    7,986
  49. Why ROLLBACK is useful when you work with Google Gemini CLI?
    1,084
  50. Reimbursement after Vaccination at McKinley Health Center
    1,194