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


Please Help Members By Posting Answers For Below Questions

How many inner classes can a class have?

668


What is meant by nested loop?

645


How does thread synchronization occurs inside a monitor?

646


Name the components that are termed to be Heavy-weight component but available in Light-weight components?

2077


What is the purpose of final keyword and when to use it?

629






What is the different types of functions?

646


What is final?

699


Can you pass by reference in java?

613


What are the new features in java 8? Explain

643


Why to use nested classes in java? (Or) what is the purpose of nested class in java?

614


What do you mean by local class?

622


Is 9 a prime number?

562


Explain the difference between transient and volatile in java?

665


Why does java have two ways to create child threads? Which way is better?

631


What are singleton services?

576