Abstract Class in Java
Abstract Class in Java
Content Menu ▼
Before learning java abstract class, let's understand the abstraction in java first.
Abstraction in Java
Abstraction is a process of hiding the implementation details and showing only functionality to the user.
Another way, it shows only important things to the user and hides the internal details for example
sending sms, you just type the text and send the message. You don't know the internal processing
about the message delivery.
Abstraction lets you focus on what the object does instead of how it does it.
abstract method
A method that is declared as abstract and does not have implementation is known as abstract method.
http://www.javatpoint.com/abstract-class-in-java 1/6
8/19/2015 Abstract Class in Java - Javatpoint
Test it Now
running safely..
A factory method is the method that returns the instance of the class. We will learn about the factory
method later.
In this example, if you create the instance of Rectangle class, draw() method of Rectangle class will be
invoked.
File: TestAbstraction1.java
http://www.javatpoint.com/abstract-class-in-java 2/6
8/19/2015 Abstract Class in Java - Javatpoint
. }
. //In real scenario, implementation is provided by others i.e. unknown by end user
. class Rectangle extends Shape{
. void draw(){System.out.println("drawing rectangle");}
. }
.
. class Circle1 extends Shape{
. void draw(){System.out.println("drawing circle");}
. }
.
. //In real scenario, method is called by programmer or user
. class TestAbstraction1{
. public static void main(String args[]){
. Shape s=new Circle1();//In real scenario, object is provided through method e.g. getShape() method
. s.draw();
. }
. }
Test it Now
drawing circle
http://www.javatpoint.com/abstract-class-in-java 3/6
8/19/2015 Abstract Class in Java - Javatpoint
Test it Now
File: TestAbstraction2.java
Test it Now
bike is created
running safely..
gear changed
Rule: If there is any abstract method in a class, that class must be abstract.
. class Bike12{
. abstract void run();
. }
http://www.javatpoint.com/abstract-class-in-java 4/6
8/19/2015 Abstract Class in Java - Javatpoint
Test it Now
Rule: If you are extending any abstract class that have abstract method, you must either provide
the implementation of the method or make this class abstract.
Note: If you are beginner to java, learn interface first and skip this example.
. interface A{
. void a();
. void b();
. void c();
. void d();
. }
.
. abstract class B implements A{
. public void c(){System.out.println("I am C");}
. }
.
. class M extends B{
. public void a(){System.out.println("I am a");}
. public void b(){System.out.println("I am b");}
. public void d(){System.out.println("I am d");}
. }
.
. class Test5{
. public static void main(String args[]){
. A a=new M();
. a.a();
. a.b();
. a.c();
. a.d();
. }}
Test it Now
http://www.javatpoint.com/abstract-class-in-java 5/6
8/19/2015 Abstract Class in Java - Javatpoint
Output:I am a
I am b
I am c
I am d
← prev next →
http://www.javatpoint.com/abstract-class-in-java 6/6