I've been recently learning and doing assignments on the 4 pillars of OOP in java. I've searched around the internet for some research and I've obtained a solid understanding for inheritance, polymorphism and encapsulation. However, I cannot find anything I've been able to understand on abstraction. Most sources never even mention abstraction. Any explanations for this will be appreciated.