i need example for java abstraction. where we use
abstraction and why we need abstraction.
Answer Posted / pushpa
Abstraction is the hiding of information behind other,
usually simpler, information. In programming, abstraction
is often used to hide implementation or system details
behind a simple interface. For example, in the standard
C library, we open a disk file with fopen(); this hides
the details of disk I/O and system calls behind the
abstraction named "fopen".
In Java, abstraction is used specifically in the Object
Oriented Programming (OOP) sense: hiding the details of
the implementation of an object behind the interface
composed of its methods.
For example, the Java Collections Framework defines the
abstraction called java.util.Map. It is an abstract view
of a software object that maps from one set of objects
into another. The class java.util.TreeMap implements the
Map abstraction.
Abstraction in Java is mostly implemented with interfaces
and abstract classes, but you can actually implement it
anywhere that you hide details behind a method.
Here is a simple example. The abstraction of a factorial
of a positive integer N is that it is the product of N
times the factorial of (N-1). The factorial of 1 is 1.
Exactly how we compute the product is irrelevant, all that
matters is that our code obey the factorial abstraction.
public class Factorial {
public static long factorial(int x) {
if (x < 1) throw new RuntimeException("Bad X");
if (x == 1) return 1L;
else {
long y;
y = 1;
while(x > 1) {
y = y * x;
x = x - 1;
}
return y;
}
}
}
So, in this example, we computed the factorial in a
slightly different way than the definition, but it
always gives the right answer! We've hidden the details
behind an abstraction.
You can learn more about abstraction in OOP from these
articles:
http://www.kbcafe.com/articles/OOP.Concepts.pdf
http://www.campusprogram.com/reference/en/wikipedia/a/ab/abstraction__computer_s...
http://javaboutique.internet.com/tutorials/JavaOO/index.html
| Is This Answer Correct ? | 2 Yes | 6 No |
Post New Answer View All Answers
Discuss about garbage collector in Java.
What are streams?
what are synchronized methods and synchronized statements? : Java thread
What is the purpose of sizeof operator?
What is a class in java?
How are the elements of a gridbaglayout organized in java programming?
Difference between arraylist and vector.
What are the major drawbacks of external iteration?
What is an class?
write a program that list all permutations of ABCDEF in which A appears before B?
In how many ways we can do exception handling in java?
Can inner class final?
What is the maximum size of byte array in java?
How to connect to a remote database using Applet?
Explain the importance of join() method in thread class?