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
What is the difference between yielding and sleeping?
Explain java code for recursive solution's base case?
What is treemap in java?
Is hashset sorted in java?
What is a loop java?
what is daemon thread and which method is used to create the daemon thread? : Java thread
What is the difference between Error, defect,fault, failure and mistake?
How to find the given number is a prime number or not by getting input from the user
What is the difference between member variables initialization and assignment in a constructor?
What is covariant return type?
What is the relationship between class and object?
What do you mean by garbage collection used in java?
What types of index data structures can you have in java?
How can a gui component handle its own events?
Why we use methods in java?